nullable相关内容

有型有什么区别?和可空<&型GT ;?

在C#中是可空原始类型(即布尔?)只是别名作为他们相应的可空< T> 类型或是两者之间有区别吗? 解决方案 如果你看看IL使用的 ILDASM ,你会发现,他们都编译到可空<布尔方式> ..
发布时间:2016-08-28 14:48:41 C#/.NET

什么之间的区别'廉政?“和“INT”在C#中?

我90%肯定,我以前看到的计算器这个答案,其实我从来没有见过的“诠释?”语法之前看到它在这里,但无论我如何寻找我无法找到previous后,它的驾驶我疯了。 这可能是我一直偶然吃蘑菇滑稽,但如果我没有,可有人请指出previous后,如果他们能够找到它或重新解释一下吗?我的计算器搜索福显然是太低了...... 解决方案 诠释?是简写可空< INT方式> 这可能是你要找的信息 ..
发布时间:2016-08-28 14:33:22 C#/.NET

如何使用DateTime.TryParse一个可空<&日期时间GT ;?

我想用DateTime.TryParse方法来获取一个字符串转换为可为空值的日期时间值。但是,当我试试这个: 日期时间? D组; BOOL成功= DateTime.TryParse(“一些日期文本”,出(日期时间)D); 编译器告诉我 “出”的说法是不属于变量 不知道我需要在这里做。我也试过:出(DATETIME)d.Value 和不工作的。任何想法? 解决方案 日期时间? ..
发布时间:2016-08-28 14:14:17 C#/.NET

无法确定的条件前pression的类型,因为有'廉政'和&lt之间不存在隐式转换;零>

为什么这个不能编译? 诠释?数=真的吗? 5:空; 无法确定的条件前pression类型,因为有'廉政'和&lt之间不存在隐式转换;零> 解决方案 该规范(§7.14)说,对于有条件的前pression B? X:Y ,有三种可能性,无论是 X 和是都有一个类型和的一定的良好的条件的满足,只有的一个X 和是有一个类型的和的一定的良好的条件的满足,或者发生编译时错误。在 ..
发布时间:2016-08-28 14:09:33 C#/.NET

如何转换C#可空INT为int

我要如何转换成一个可空 INT 到 INT ?假设我有2 int类型如下的: 诠释? V1; INT V2; 我要分配 V1 的价值 V2 。 V2 = V1; 将导致错误。如何转换 V1 到 V2 ? 解决方案 其他答案为止是正确的;我只是想增加一个这是稍微干净: V2 = V1?默认值(INT); 任何可空< T> 隐式转换为它的 T ,只要全程前pression正 ..
发布时间:2016-08-28 13:49:06 C#/.NET

如何在.NET中的引擎盖下实现的可空类型?

在我们自己的乔恩斯基特的 C#深入,他讨论了3种方式来模拟一个'空'的值类型: 魔法值(例如最早可能日期时间取为'空') 引用类型的包装 布尔标志 要提及的是空类型使用第三种方法。究竟如何做到可空类型的发动机罩下工作吗? 解决方案 最后,他们都只是一个布尔标志的通用结构 - 除非有特殊拳击规则。因为结构是(默认)初始化为零,所述布尔默认为假(没有值): 公共结构可空&LT ..
发布时间:2016-08-28 13:36:56 C#/.NET

三元运算符VB VS C#:为什么做出决议没有到零?

我只拍自己的脚,想知道是否有实际的原因使这种情况成为可能。结果 反正,这个问题可以留为将来脚射手的便利。 假设我们有一个vb.net可空值: 暗淡作为我整型? 我们希望一个值分配给它,立足的条件,并使用三元运算符,因为它是如此整洁的东西: I = IF(条件(),没什么,42) 也就是说,如果一个条件是真正,使用的为空,否则价值。结果 在该点处拍摄时发生。无明显原因的VB编译器决定, ..
发布时间:2016-08-28 13:09:23 C#/.NET

序列化可空<&日期时间GT;到XML

我试图序列化类的几个数据成员是可空的对象,下面是一个例子 [XmlAttribute(“AccountExpirationDate”)] 公众可空<&日期时间GT; AccountExpirationDate { {返回userPrincipal.AccountExpirationDate; } 集合{userPrincipal.AccountExpirationDate =价值 ..
发布时间:2016-08-28 13:04:54 C#/.NET

在C#中为什么不能有条件的经营者隐式转换为可空类型

我很好奇,为什么隐式转换的失败... 诠释? someValue中= SomeCondition? ResultOfSomeCalc():空; 和为什么我要代替执行有明确的转换诠释? someValue中= SomeCondition? ResultofSomeCalc():(INT?)空; 在我看来,编译器包含所有的信息就需要做一个隐式转换的决定,不是吗? 解决方案 在C#3.0规 ..
发布时间:2016-08-26 21:31:21 C#/.NET

LINQ查询可空总和

从我Db.Items 选择新VotedItem { ITEMID = i.ItemId, 点=(从Db.Votes v 其中,b.ItemId == v.ItemId 选择v.Points).SUM() } 我得到这个查询,但如果没有得票数与异常发现失败:的空值不能分配给类型System.Int32一个成员是一个非空的值类 ..
发布时间:2016-08-26 21:27:38 C#/.NET

C#可空字符串错误

私人字符串? typeOfContract { {返回(字符串?)的ViewState [“typeOfContract”]; } 集合{的ViewState [“typeOfContract”] =值; } } 后来在code我用这样的: typeOfContract =的Request.QueryString [“型”]; 我收到以下错误在typeOfContract行的声明, ..
发布时间:2016-08-26 21:23:10 C#/.NET

Linq中的比较可空类型到SQL

我有其中有一个可为空的ParentId字段类别的实体。当下面的方法被执行和类标识符是已空,但有类别的结果似乎空具有空的ParentId价值。 什么是这里的问题,我错过什么? 公开的IEnumerable< ICategory> GetSubCategories(长?的categoryId) { VAR子= this.Repository.Categories.Where(C ..
发布时间:2016-08-26 19:55:28 C#/.NET

这是为什么code在C#中无效?

以下code将不能编译: 串富=“酒吧”; 对象o = foo的== NULL? DBNull.Value:富; 我得到:无法确定的条件前pression的错误1类型,因为有'System.DBNull'和'串'的之间不存在隐式转换 要解决这个问题,我必须做这样的事情:串富=“酒吧”; 对象o = foo的== NULL? DBNull.Value:(对象)富; 本投看起来毫无意义,因为 ..
发布时间:2016-08-26 16:26:27 C#/.NET

C#优雅的方式来检查,如果一个属性的属性为null

在C#中,说,你想拉一个值off PropertyC在这个例子和对象A,PropertyA和PropertyB都可以为空。 ObjectA.PropertyA.PropertyB.PropertyC 我如何能得到PropertyC安全与code量最少的? 现在我会检查: 如果(对象A = NULL&放大器;!&安培; ObjectA.PropertyA = NULL&放大器;!&安培;!O ..

.NET - 转换泛型集合到数据表

我想泛型集合(列表)转换为数据表。我发现下面的code帮我做到这一点: //对不起缩进 公共类CollectionHelper { 私人CollectionHelper() { }//这是我一直在使用该方法 公共静态数据表中的ConvertTo< T>(IList的< T>清单) { 数据表表= CREATETABLE< T>(); 键入的E ..
发布时间:2016-08-26 16:09:53 C#/.NET

? (可为空)运算符在C#

什么是对,现在它可以存储null值类型的数据类型为空的应用操作改变。 解决方案 正如其他人所说,“?”仅仅是将其更改为可空&LT速记; T> 。这仅仅是另一个值类型与布尔标志说是否有真的有用的价值,或者它是否是该类型的空值。换句话说,可空< T> 看起来有点像这样: 公共结构可空< T> { 私人只读布尔hasVa​​lue的; 公共BOOL ..
发布时间:2016-08-26 16:07:44 C#/.NET

用可空类型的问题:条件运算符

有人能解释为什么这个工作在C#.NET 2.0: 可空<&日期时间GT;富; \t如果属实) 富= NULL; 其他 富=新的DateTime(0); ...但是这并不:可空<&日期时间GT;富; 富=真的吗?空:新的DateTime(0); 后面这种形式给我一个编译错误“有条件的前pression类型不能确定,因为之间不存在隐式转换'<&空GT;'和“System. ..
发布时间:2016-08-26 14:50:53 C#/.NET

性能的惊喜与" AS"和可空类型

我只是修改的C#第4章中深度可空类型的交易,而我加入了部分有关使用“为”操作符,它可以让你写的: 对象o = ...; 诠释? X = O为int?; 如果(x.HasValue) { ... //使用x.Value这里 } 我认为这是很整洁,而且它可以提高对C#1当量性能,用“是”,接着铸造 - 毕竟,这样我们只需要问的动态类型检查一次,然后一简单的值检查。 这似乎不是这样的情况, ..
发布时间:2016-08-26 14:30:42 C#/.NET