草庐IT

default-method

全部标签

c# - 低级差异 : non-static class with static method vs. 静态类与静态方法

我想知道使用具有静态方法的非静态类与具有相同静态方法的静态类的一般好处(或缺点)是什么,除了我不能使用非静态类中的静态方法作为扩展方法。例如:classNonStaticClass{publicstaticstringGetData(){return"Thiswasinvokedfromanon-staticclass.";}}与此相比:staticclassStaticClass{publicstaticstringGetData(){return"Thiswasinvokedfromastaticclass.";}}使用一种方法优于另一种方法对性能/内存有何影响?注意:假设我不需要

“export ‘default‘ (imported as ‘VueRouter‘) was not found in ‘vue-router‘报错分析

在项目运行时会报错“export‘default‘(importedas‘VueRouter‘)wasnotfoundin‘vue-router‘`主要是路由组件问题一、错误分析有以下两种原因:1.路由格式编写错误错误格式router:[{//应该是routes//路径的错误path:'/home',//组件名不是字符串格式component而不是componentscomponents:"home"},正确格式routes:[{//路径path:'/home',//组件名component:Home},2.对应版本不兼容这是因为安装的时候默认安装最新版本可能与其他插件不兼容,重新安装旧版本即

c# - 更好的日期时间?或者对 NULL 使用 default(DateTime)?

我正在设计一个具有私有(private)消息传递系统的C#/NHibernate网站。我希望管理员检查用户是否以及何时阅读了一条消息,并一起突出显示用户尚未阅读的那些消息。为了实现这两个目标,我找到了两个选择:选项1classMessage{DateTime?Read;}其中Read==null表示还没有读过选项2classMessage{DateTimeRead;}其中Read==default(DateTime)(January1st1A.D.,0:00:00)表示尚未读取。在大学里,我被教导使用NULL值来处理所有特殊情况,并且还使用可空类型似乎不错的选择,因为通过检查它们是否为

c# - Resharper 中的警告 "Return value of pure method is not used"

我有一个快速的问题,关于我正在工作的c#项目中从VisualStudio中的Resharper收到的警告。警告是:"ReturnValueofpuremethodisnotused"发生这种情况的方法如下:privatestaticboolFilePathHasInvalidChars(stringuserInputPath){try{//thisiswherethewarningoccurs:Path.GetFullPath(userInputPath);}catch(Exceptione){Log.Error(String.Format("TheProgramfailedtorun

c# - 多线程,Task.Run 错误 'The call is ambiguous between the following methods or properties'

当我尝试构建项目时,显示以下错误消息。Thecallisambiguousbetweenthefollowingmethodsorproperties:'System.Threading.Tasks.Task.Run(System.Action)'and'System.Threading.Tasks.Task.Run(System.Func)'我该如何解决这个问题?publicstaticclassMaintananceManager{privatestaticThreadSafeSocialMediaListPostList=newThreadSafeSocialMediaList(

c# - 检查 : null vs default()?

我想检查引用类型是否为空。我看到两个选项(_settings是引用类型FooType):if(_settings==default(FooType)){...}和if(_settings==null){...}这两者的表现有何不同? 最佳答案 没有区别。任何引用类型的默认值为null。default关键字的MSDNC#引用页:https://msdn.microsoft.com/en-us/library/25tdedf5.aspx. 关于c#-检查:nullvsdefault()?,我

c# - 如何初始化 ConcurrentDictionary?错误 : "Cannot access private method ' Add' here"

我有一个静态类,我在其中使用字典作为查找表以在.NET类型和SQL类型之间进行映射。这是一个这样的字典的例子:privatestaticreadonlyDictionarySqlServerMap=newDictionary{{typeof(Boolean),"bit"},{typeof(Byte[]),"varbinary(max)"},{typeof(Double),"float"},{typeof(Byte),"tinyint"},{typeof(Int16),"smallint"},{typeof(Int32),"int"},{typeof(Int64),"bigint"},{

c# - Visual Studio Community 2015 调试器在带有 "Evaluation of native methods is not supported"的条件断点处结束 - 如何修复?

我有一个条件断点,条件检查字符串的值,如果为真则停止。它停止了,但随后打开一个窗口说:断点的条件无法执行...返回的错误是“评估方法System.Collections.Specialized.NameValueCollection.get_Item()调用native方法”System.Globalization.TextInfo.Internal.GetCaseInsHash().不支持在此上下文中评估native方法。'。单击“确定”在此断点处停止。我搜索了答案,但他们说启用托管兼容模式,但没有用。 最佳答案 在项目调试设置下

c# - CS1501 : No overload for method 'ToString' takes 0 arguments?

ToString的无重载怎么可能采用零参数?零参数ToString是System.Object的一部分!编辑以回应接近投票:由于我无法将我的构建服务器升级到.NET4.5,有什么方法可以使此代码与.NET4.0/VS2010编译器?没有给我的重载一个完全不同的名称,这并不酷。所讨论的对象是一个F#区分联合,它覆盖了从System.Object继承的ToString方法。被覆盖的ToString正在被属于同一解决方案的C#项目中的代码调用。这一切都很好,直到我将ToString的额外重载添加到我的可区分联合中,它接受一个参数。这一切都在我的本地机器上完美构建和运行(VS2012,所有项目

c# - default(T) 使用空集合而不是 null

我想要一个通用方法,它为传递的类型返回默认值,但是对于集合类型,我想要得到空集合而不是null,例如:GetDefault();//returnsemptyarrayofint'sGetDefault();//returns0GetDefault();//returnsnullGetDefault>();//returnsemptylistofobjects我开始写的方法如下:publicstaticTGetDefault(){vartype=typeof(T);if(type.GetInterface("IEnumerable")!=null)){//returnemptycolle