草庐IT

null_unspecified

全部标签

c# - XmlCodeExporter 和可为 null 的类型

System.Xml.Serialization.XmlCodeExporter从XSD架构生成代码(以代码CodeDom形式)。但它有一些怪癖。例如一个可选元素:我希望这会生成一个类型为Nullable的相应代码成员,但它实际上创建了一个decimal类型的成员,然后是一个单独的SomethingSpecified应单独切换以指示空值的字段。这可能是因为该库是在引入可空类型之前创建的,但它导致代码非常不方便。是否可以调整此代码生成,或者是否有替代工具可以在这种情况下生成更好的代码?编辑:我知道我可以修改架构并添加nillable='true',但我不想更改架构来解决代码生成的限制。

c# - 为什么C#null在VB6中被翻译成Empty,而不是Nothing

我有一个引用VB6dll的C#应用程序。当我将null从C#传递到VB6dll函数时,null在VB6中被翻译为值Empty(值),而不是Nothing(对象)。例如://functioninvb6dllthatreferencedbyc#appPublicSubTestFunc(ByValoValueAsVariant){...ifoValueisNothingthensetoValue=someObjectendif...}//mainc#codeprivatevoidForm1_Load(objectsender,EventArgse){objecttestObject=newo

c# - Json.NET 序列化中有没有办法区分 "null because not present"和 "null because null"?

我在ASP.NETwebapi代码库中工作,我们在很大程度上依赖于通过JSON.NET自动支持将消息主体的JSON反序列化为.NET对象。作为为我们的一项资源构建补丁支持的一部分,我非常想区分JSON对象中不存在的可选属性与显式为null的同一属性。我的意图是将第一个用于“不要更改那里的内容”与“删除此内容”。有谁知道是否可以标记我的C#DTO,以便在它们被反序列化时JSON.NET可以告诉我它是哪种情况?现在它们只是作为null出现,我不知道为什么。相反,如果有人能想出一个更好的设计,不需要我这样做,同时仍然支持补丁动词,我很想听听你的建议。作为一个具体的例子,考虑将传递给put的这

c# - fileStream.CopyTo(memoryStream)后,memoryStream为null

所以,我有获取BitmapImage的函数,我需要将它保存到iso存储并转换为Base64(用于发送到服务器)。但是,从fileStream复制到memoryStream不成功。publicvoidSetImage(BitmapImagebitmap){if(isoFiles.FileExists(Settings.FILE_AVATAR_JPG))isoFiles.DeleteFile(Settings.FILE_AVATAR_JPG);varfileStream=isoFiles.CreateFile(Settings.FILE_AVATAR_JPG);varwb=newWrite

c# - string str 和 string str=null 的区别

我想知道当我们声明一个变量时内部到底发生了什么,就像这样:stringtr;stringtr=null;在调试时,我注意到这两个值都只显示空值。但是当使用reftr而不初始化null时,它会给出错误,而第二行不会。请帮助我深入了解它 最佳答案 你的第一条语句只是声明,你的第二条语句是声明+初始化。stringtr;//JustDeclarationstringtr=null;//Declaration+Initialization.如果您尝试仅在声明中使用tr,您可能会遇到编译时错误。(第一种情况)例如:stringtr;//Jus

c# - 如果参数值为 null,则传递字符串

我需要在一个函数中传递多个参数。我的要求是参数值不能为NULL。如果参数为NULL,改为传递“TBD”。例如getBookInfo(stringbookId,stringbookName,stringbookAuthor)//ifanyoftheparametersisNULL,pass"TBD"stringinparameter我该怎么做?我可以使用三元运算符来做到这一点吗?如果可以,怎么做? 最佳答案 在调用您的方法时尝试这样做:getBookInfo(bookId??"TBD",bookName??"TBD",bookAuth

c# - 将 null 分配给可为空的 int 时出错 - "The value ' null' 对属性无效”

我的View模型中有这个属性:[DisplayName("Region")]publicint?RegionId{get;set;}我将我的View模型传递给我的Controller,如果RegionId为null,它会在ModelState.IsValid处失败。如果我向它传递一个整数,它就可以正常工作。错误信息是:Thevalue'null'isnotvalidforRegion在检查ModelState.IsValid之前,我也试过调用它,但我得到了同样的错误:if(viewModel.RegionId==null)viewModel.RegionId=(int?)null;这里

c# - 如何知道我的 linq 查询是否返回 null

我有这个linq查询:varmyQuery=fromQinmyDataContextselectQ.Name当我尝试这样做时:listView.ItemsSource=myQuery它有时会抛出异常,因为myQuery中没有元素我尝试了很多方法,例如:if(myQuery.count!=0)或if(myQuery.Any())但没有任何效果,那么我如何确定我的查询是否返回空值? 最佳答案 您可以将结果实现为列表:varmyQuery=(fromQinmyDataContextselectQ.Name).ToList();现在您可以查

c# - Image.Save 崩溃 : {"Value cannot be null.\r\nParameter name: encoder"}

我正在尝试将图像保存到MemoryStream中,但在某些情况下会失败。代码如下:以下代码成功:Imageimg=Bitmap.FromStream(fileStream);MemoryStreamms=newMemoryStream();img.Save(ms,img.RawFormat);//Thissucceeds.以下代码失败:Imageimg=Bitmap.FromStream(fileStream);Imagethumb=img.GetThumbnailImage(thumbWidth,thumbHeight,null,System.IntPtr.Zero);MemoryS

c# - LINQ 在 SQL 语句中生成额外的 IS NULL 条件

我正在编写一些LINQ来根据电子邮件获取记录,但是,生成的SQL包含一个额外的ISNULL条件,它不需要存在,因为我正在检查参数值在将条件添加到查询之前在代码中为null。我的LINQ代码是:if(email!=null){query=query.Where(r=>r.Email==email);}由此产生的SQL条件为:(([Extent1].[Email]=@p__linq__0)OR(([Extent1].[Email]ISNULL)AND(@p__linq__0ISNULL)))(([Extent1].[Email]ISNULL)AND(@p__linq__0ISNULL))就