草庐IT

null_object

全部标签

c# - 为什么我不能将 DateTime[] 转换为 object[]?

看来我可以将DateTime转换为object,那么为什么我不能将数组DateTime[]转换为object[]?我知道这与值/引用类型有关,但装箱不允许我这样做吗? 最佳答案 Arraycovariance仅适用于引用类型的数组。DateTime是一种值类型,因此您不能将DateTime[]分配给object[]变量。您必须显式创建一个对象数组并将值复制过来。换句话说,创建一个类型为object[]的新数组实例。有很多方法可以做到这一点。CopyTo()的简单使用应该足够了。DateTime[]x=newDateTime[]{..

c# - 为什么 integer == null 在 C# 中是一个有效的 boolean 表达式?

如果integer(int类型的变量)不可为空,为什么integer==null在C#中是一个有效的boolean表达式?(我不反对,其实我也喜欢,只是我不知道可以) 最佳答案 尽管int本身是不可空的,但存在到int?的隐式转换,是可空的。此时,如果该结构在两侧都声明了具有相同类型的==运算符,那么它也将被提升以处理可为null的类型。所以这不能编译:publicstructFoo{}classTest{staticvoidMain(){Foox=newFoo();if(x==null){...}}}...但是如果您给Foo一些运

c# - 在单个 C# 泛型方法中返回 nullable 和 null?

是否可以在C#泛型方法中返回对象类型或Nullable类型?例如,如果我有一个List的安全索引访问器我想返回一个值,以后可以用==null检查或.HasValue().我目前有以下两种方法:staticT?SafeGet(Listlist,intindex)whereT:struct{if(list==null||index=list.Count){returnnull;}returnlist[index];}staticTSafeGetObj(Listlist,intindex)whereT:class{if(list==null||index=list.Count){return

c# - Linq to objects - 选择第一个对象

我对linq几乎一无所知。我这样做:varapps=fromappinProcess.GetProcesses()whereapp.ProcessName.Contains("MyAppName")&&app.MainWindowHandle!=IntPtr.Zeroselectapp;这让我获得了符合该条件的所有正在运行的进程。但我不知道如何获得第一个。我在网上找到的例子似乎暗示我必须这样做varmatchedApp=(fromappinProcess.GetProcesses()whereapp.ProcessName.Contains("MyAppName")&&app.Main

c# - LINQ to Entities 无法识别方法 'System.Object GetValue(...)'

我的问题是我需要查询泛型类中属性的值。该属性用属性标记。请看下面的代码:varrowKeyProperty=EFUtil.GetClassPropertyForRowKey();vartenantKeyProperty=EFUtil.GetClassPropertyForTenantKey();varqueryResult=objContext.CreateObjectSet().Single(l=>(((int)tenantKeyProperty.GetValue(l,null))==tenantKey)&&(((int)rowKeyProperty.GetValue(l,null)

c# - Null 合并运算符为动态对象的属性返回 null

我最近在使用Json.NET将JSON解析为动态对象时发现空合并运算符存在问题。假设这是我的动态对象:stringjson="{\"phones\":{\"personal\":null},\"birthday\":null}";dynamicd=JsonConvert.DeserializeObject(json);如果我尝试使用??d的字段之一上的运算符,它返回null:strings="";s+=(d.phones.personal??"default");Console.WriteLine(s+""+s.Length);//outputs0但是,如果我将动态属性分配给字符串,则

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

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

c# - JWT 身份验证 - UserManager.GetUserAsync 返回 null

在AuthController中进行身份验证时,我创建了一些Claims-UserID就是其中之一。...Subject=newClaimsIdentity(new[]{newClaim(ClaimTypes.Name,user.UserName),newClaim("UserID",user.Id.ToString()),})当Angular应用发出请求时,我能够在另一个Controller中获取UserIDClaimclaimUserId=User.Claims.SingleOrDefault(c=>c.Type=="UserID");ControllerBase.User实例包含

c# - 我如何转换到 ObservableCollection<object>

我怎么投fromObservableCollectionintoObservableCollection这对我不起作用(ObservableCollection)myTabItemObservableCollection 最佳答案 你应该这样复制returnnewObservableCollection(myTabItemObservableCollection); 关于c#-我如何转换到ObservableCollection,我们在StackOverflow上找到一个类似的问题:

c# - Newtonsoft Json 将值 {null} 转换为类型 'System.Int32' 时出错

执行AJAX请求时出现以下错误:Errorconvertingvalue{null}totype'System.Int32'.Path'[5].tabID',line1,position331.错误出现在我的processRequest(...)的第二行publicvoidProcessRequest(HttpContextcontext){stringstrJson=newStreamReader(context.Request.InputStream).ReadToEnd();Listelements=JsonConvert.DeserializeObject>(strJson);