草庐IT

default-value

全部标签

c# - 最佳实践 : ref parameter or return value?

其实我是做一个列表作为引用参数如下:publicstaticListListMethod(Listresult)我也看到有人这样做:publicstaticvoidListMethod(refListresult)如果我没记错的话,“my”方法也将list作为引用参数,您应该可以像“other”在他的方法中一样使用它。但在我看来,您输入一个参数,对它做一些事情并在方法返回值中返回它似乎更“干净”。支持或反对一种方法或另一种方法的任何好的论据? 最佳答案 可能您不需要使用ref-但是有区别的。通常当我看到人们使用ref作为引用类型参数

c# - 泛型类型值和 '==' 关键字的 'default' 运算符的行为是什么?

问题的第1部分:在下面的代码中,为什么value==default可以正常编译,而其他替代方案却不能?boolMyEqual(Tvalue){Tvalue2=default;if(value==value2)//Error:Operator'=='cannotbeappliedtooperandsoftype'T'and'T'returntrue;if(value==default(T))//Error:Operator'=='cannotbeappliedtooperandsoftype'T'and'T'returntrue;if(value==default)//Noerrorre

c# - MemoryCache.Default 在 .NET Core 中不可用?

我正在将一些代码从.NET4.6移植到.NETCore,但在使用MemoryCache时遇到了一些问题。4.6代码使用MemoryCache.Default来实例化缓存,但这在.NETCore中似乎不可用。在.NETCore中是否有与此等效的东西,或者我应该将自己的MemoryCache更新为单例并通过IOC注入(inject)它? 最佳答案 System.Runtime.Caching.MemoryCache和Microsoft.Extensions.Caching.Memory.MemoryCache是完全不同的实现。它们很相似

c# - 尝试打开 telerik 报告时出现 "Value cannot be null. Parameter name: instance"错误

在我的解决方案中,我有telerik报告,当尝试在VisualStudio2010设计器中打开它们时,我收到此错误:Valuecannotbenull.Parametername:instanceCallStackatSystem.ComponentModel.TypeDescriptor.AddAttributes(Objectinstance,Attribute[]attributes)atMicrosoft.VisualStudio.Design.VSDesignSurface.CreateDesigner(IComponentcomponent,BooleanrootDesig

c# - BindingFlags.Default 等同于什么?

我记得在某处读过,当使用反射和接受BindingFlags位掩码的GetMethod重载时,BindingFlags.Default是等效的到BindingFlags.Public|BindingFlags.静态|BindingFlags.Instance之类的。谁能告诉我BindingFlags.Default中具体包含哪些值?MSDNdocumentation不说,而且我在任何地方都找不到答案。 最佳答案 如果你“去定义”它,你会看到:publicenumBindingFlags{//Summary://Specifiesnob

c# - 是否有任何有值(value)的 CSLA 替代品可用?

我的公司有兴趣将大型业务应用程序移植到.NET。我们计划开发桌面版和silverlight版。我主要研究了CSLA框架(得到了rocky的书,已经读了一半)并发现它有点过度设计,数据层方面似乎也没有那么完善。有没有其他框架声称可以做CSLA正​​在做的事情?我不是在谈论ORM工具(例如L2S、EF、NHibernate)。我感兴趣的是支持业务规则的框架、简单的n层架构、对象是域驱动的而不是数据库驱动的、业务对象的安全性等...我知道我可以找到小型框架来完成一些所需的工作(我想到了EnterpriseApplicationBlock),但我正在寻找一个包含所有内容的框架。

c# - Visual Studio 中的 "Add existing item": is it possible to make "Add as link" default?

正如this中指出的那样因此,VisualStudio中的Add>Existingitem对话框默认显示Add按钮(意味着所选项目将被物理复制到新位置),而理想的操作通常(总是?)添加为链接。是否可以配置VisualStudio,以便在打开添加>现有项目对话框时默认选择添加为链接?我已经彻底搜索了VisualStudio中的Options对话框并检查了MSDN文档以找到对此的答案,但到目前为止无济于事。ProjectLinker当两个新项目要共享同一代码库时,自动链接是一个不错的选择。但是,当将大量文件从现有项目链接到新项目时,似乎仅限于Add>Existingitem方法,而且这项工

C# 反射 : how to get an array values & length?

FieldInfo[]fields=typeof(MyDictionary).GetFields();MyDictionary是一个静态类,所有字段都是字符串数组。如何获取每个数组的长度值,然后遍历所有元素?我尝试了这样的类型转换:fieldasArray但它会导致错误Cannotconverttype'System.Reflection.FieldInfo'to'System.Array'viaareferenceconversion,boxingconversion,unboxingconversion,wrappingconversion,ornulltypeconversion

“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值来处理所有特殊情况,并且还使用可空类型似乎不错的选择,因为通过检查它们是否为