草庐IT

c# - 检查 Object 在每个属性中是否为 null

我有多个属性的类;publicclassEmployee{publicstringTYPE{get;set;}publicint?SOURCE_ID{get;set;}publicstringFIRST_NAME{get;set;}publicstringLAST_NAME{get;set;}publicListdepartmentList{get;set;}publicListaddressList{get;set;}}有时这个对象返回给我任何属性的值Employeeemp=newEmployee();emp.FIRST_NAME='abc';其余值为空。这个可以但是,如何检查对象属

c# - 检查对象是否为 null 并在同一个 if 语句中比较对象的属性值是否安全?

请参阅线程标题。我是否可以安全地执行类似的操作而不用担心NullReferenceException,或者不能保证这些bool表达式将从左到右求值?//canthisthrowanNRE?if(obj==null||obj.property==value){//dosomething} 最佳答案 他们将从左到右进行评估,保证。所以是的,它是安全的。Theconditional-ORoperator(||)performsalogical-ORofitsbooloperands,butonlyevaluatesitssecondope

C# : Implicit conversion between '<null>' and 'bool'

当我尝试转换object时收到奇怪的错误消息至bool,这是我的代码:publicpartialclassModifierAuteur:DevExpress.XtraEditors.XtraForm{publicModifierAuteur(objectgetKeyDecesCheckBox){decesCheckBox.Checked=getKeyDecesCheckBox==null?null:(bool)getKeyDecesCheckBox;}}这是错误信息:Typeofconditionalexpressioncannotbedeterminedbecausethereisn

c# - ConfigurationManager.AppSettings 返回 null

我正在使用ConfigurationManager.AppSettings[myKey]从我的Windows应用程序中的app.config文件中读取一个值,但返回的值始终为null,即使键存在并且它有一个值,Deas任何人都知道为什么?谢谢 最佳答案 一个可能更简单的替代方法是使用设置文件。这将App.config值的创建和维护封装在设计器GUI中,并生成用于访问这些值的代码。要添加设置文件,请在VS中右键单击您的项目并单击“添加->新项”,选择“设置文件”并为其指定一个有意义的名称,例如MainSettings.settings

c# - 这是在 C# 中无需空检查的情况下触发/调用事件的更好方法吗?

我见过的大多数代码都使用以下方式来声明和调用事件触发:publicclassMyExample{publiceventActionMyEvent;//couldbeaneventEventHandler,tooprivatevoidOnMyEvent(){varhandler=this.MyEvent;//copybeforeaccess(toaviodracecond.)if(handler!=null){handler();}}publicvoidDoSomeThingsAndFireEvent(){//...doingsomethingshereOnMyEvent();}}甚至R

c# - ASP.NET + C# HttpContext.Current.Session 为空(WebService 内部)

这是我发起session的方式protectedvoidSession_Start(objectsender,EventArgse){HttpContext.Current.Session["CustomSessionId"]=Guid.NewGuid();}在我的类库下的解决方案中,我正在尝试访问它并获得空异常:stringsess=HttpContext.Current.Session["CustomSessionId"];这是我在web.config和app.config中的配置(在我的库中)(应用程序配置) 最佳答案 根据您

c# - 哪个是首选 : new Nullable<int> or (int? )null?

在这样的表达式中首选哪种方式:int?Id{get{inti;returnInt32.TryParse(Request["id"],outi)?i:(int?)null;}}在null上转换更好吗?或者创建一个newNullable? 最佳答案 最好的是default(int?),因为它总是按预期工作(引用类型、值类型,甚至在泛型中)。 关于c#-哪个是首选:newNullableor(int?)null?,我们在StackOverflow上找到一个类似的问题:

c# - 比较 2 个对象并检索具有不同值的字段列表

给定一个包含35个字段的类和2个具有一定数量不同字段值的对象。有没有一种聪明的方法来获得一个list对象所在的字段名称如下?例如obj1.Name="aaa";obj1.LastName="bbb";obj1.Address="xcs";obj2.Name="aaa";obj2.LastName="ccc";obj2.Address="jk";目标:listString>containing2StringsLastNameandAddress我认为反射是可行的方法,但我担心35个字段太重了。还有其他想法吗,比如linq? 最佳答案

c# - 我如何检查 session 是否存在或是否为空值或 .net c# 中的 null

有谁知道如何在.netc#web应用程序中检查session是否为空?例子:我有以下代码:ixCardType.SelectedValue=Session["ixCardType"].ToString();它总是向我显示Session["ixCardType"]错误(错误消息:对象引用未设置为对象的实例)。无论如何,我可以在转到.ToString()之前检查session?? 最佳答案 像“if”这样简单的东西应该可以工作。if(Session["ixCardType"]!=null)ixCardType.SelectedValue

c# - 如何自动增加表中的列?

我在带有SqlServer2008的VisualStudio2010中使用产品实例表构建数据库,我需要使ProductId列自动递增,但我在列属性菜单中找不到该属性。如果相关的话,我正在使用c#和asp.net。我已经看到了创建表并将列设置为自动递增的代码,但由于这是我第一次编写代码,所以我不知道将代码放在哪里。我知道创建新表的唯一方法是通过VSgui,如果这有意义的话。 最佳答案 将身份规范设置为是示例SQL:CREATETABLE[dbo].[HomePageImages]([RecordId][int]IDENTITY(1,1