jjzjj

myObject

全部标签

c# - 在构造函数中检查 Null

我真的在努力找出易于调试的可重用代码的最佳实践。我遇到了开发人员之间的一种常见做法,但我还不太了解。publicMyConstructor(ObjectmyObject){if(myObject==null)thrownewArgumentNullException("myObjectisnull.");_myObject=myObject;}做这个检查几乎没有必要。但我认为这是因为我不完全了解进行此检查的好处是什么。似乎无论如何都会抛出空引用异常?我可能是错的,真的很想听听一些关于它的想法。谢谢。 最佳答案 对于编译器,null是

c# - 按字符串属性 C# 对对象列表进行排序

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicates:SortingalistusingLambda/LinqtoobjectsC#ListOrderByAlphabeticalOrder如何按字符串属性的字母顺序对对象列表进行排序。我已经尝试在该属性上实现IComparable,但我只想出了如何对第一个字符进行排序(使用char)。编辑:这是一些示例代码。classMyObject{publicstringMyProperty{get;set;}}ListsampleList=newList();MyObjectsample=newMyObject();sa

c# - 设计建议。使用 DataTable 或 List<MyObject> 作为通用规则检查器

我有大约100,000行通用数据。此数据的列/属性是用户可定义的,并且是常用数据类型(字符串、整数、double、日期)。将有大约50个列/属性。我有两个需求:能够使用表达式计算新的列/属性例如Column3=Column1*Column2.最终,我希望能够通过回调来使用外部数据,例如Column3=Column1*获取温度表达式比较简单,数学运算,sum,count&IF是唯一需要的函数。能够过滤/分组数据并执行聚合例如Sum(Data.Column1)Where(Data.Column2=="blah")据我所知,我有两个选择:1.使用DataTable。=>上面的第1点是通过使用

c# - 类型 'MyObject' 必须是不可为 null 的值类型才能将其用作泛型类型或方法 'T' 中的参数 'Nullable<T>'

我正在使用.netframework4.5我得到以下错误ErrorCS0453Thetype'MyObject'mustbeanon-nullablevaluetypeinordertouseitasparameter'T'inthegenerictypeormethod'Nullable'publicasyncTask>MyMethod(stringmyParamter){}我也试过publicasyncTaskMyMethod(stringmyParamter){}如果我将事物设置为可为空,那么为什么我会在方法名称下方看到一条红线并显示此错误消息计算器answer很简单,使返回类型

c# - ASP.NET 中的递归 TreeView

我有一个列表类型的对象,我希望用它来填充asp.netc#中的TreeView。每个对象项都有:id|Name|ParentId例如:id|Name|ParentId-------------------------1|Alice|02|Bob|13|Charlie|14|David|2在上面的例子中,parent是爱丽丝,她有两个child鲍勃和查理。大卫是鲍勃的child。我在尝试在c#ASP.NET中递归地动态填充TreeView时遇到了很多问题有没有人有一个简单的解决方案?顺便说一句:您可以使用People.Id、People.Name和People.ParentId来访问成员

c# - 无法将类型为 'System.Object[]' 的对象转换为 'MyObject[]',这是怎么回事?

场景:我目前正在编写一个层,将3个相似的Web服务抽象为一个可用的类。每个web服务公开一组共享共性的对象。我创建了一组利用共性的中间对象。然而,在我的层中,我需要在Web服务对象和我的对象之间进行转换。在像这样调用Web服务之前,我已经使用反射在运行时创建了适当的类型:publicstaticobject[]CreateProperties(Typetype,IProperty[]properties){//Emptysoreturnnullif(properties==null||properties.Length==0)returnnull;//Checkthetypeisall

c# - Linq to Entities删除

是否有使用主键使用LinqtoEntites进行删除的内置方法。目前的解决方法是创建一个名为DeleteTable的存储过程(表是表名)然后在C#LINQToEntities中我只执行context.DeleteTable(ID)这是最好的方法吗?还有哪些其他选择? 最佳答案 如果您不想去数据库检索对象的所有字段,您可以创建该类的一个新实例,将其附加到一个新的上下文,删除它,然后保存更改。这让EF生成适当的删除命令。using(varcontext=newMyContext()){varmyObject=newMyObject{ID

c# - 将 BindingList<MyObject> 转换为 List<MyObject> c#

如何将BindingList转换为List? 最佳答案 试试这个Listlist=yourBindingList.ToList();int是你的类型=) 关于c#-将BindingList转换为Listc#,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10204554/

C# - 这两种实例化类属性的方式有什么区别?

这里是基本的C#问题。在声明时或在相关对象的构造函数中创建类属性/字段的实例有什么区别。例如:publicclassMyClass{publicMyObject=newMyObject();}对比publicclassMyClass{publicMyObject;publicMyCLass(){MyObject=newMyObject();}} 最佳答案 带有初始值设定项的字段在基构造函数被调用之前被初始化,而如果初始值设定项在主体中,则仅在基构造函数被调用之后被执行.如果基础构造函数调用虚方法,这可能是相关的-但我个人会尽量避免这

c# - 运算符 'op ' 不能应用于类型 'dynamic' 和 'lambda expression' 的操作数

我似乎无法将二元运算应用于lambda表达式、委托(delegate)和方法组。dynamicMyObject=newMyDynamicClass();MyObject>>=()=>1+1;第二行给出错误:Operator'>>='cannotbeappliedtooperandsoftype'dynamic'and'lambdaexpression'为什么?运算符功能不是由我的自定义TryBinaryOperation覆盖决定的吗? 最佳答案 这不是MyDynamicClass的问题,问题是您不能将lambda表达式作为动态表达式