nullable相关内容

有myNullableLong.HasValue和myNullableLong任何区别!= NULL?

当我有一个可为空长,例如,是否有 myNullableLong.HasValue 之间的差异 myNullableLong> != NULL ...或只是“语法糖”? 解决方案 这只是语法糖。他们的行为完全一样的方式 - 在法律上无效实际测试被编译成一个调用的HasValue 反正 样品。 公共类测试 { 静态无效的 ..
发布时间:2016-09-08 19:38:54 C#/.NET

转换为空的布尔?为bool

你如何转换为空的布尔?到布尔在C#? 我曾尝试 x.Value 或 x.HasValue ... 解决方案 您最终还是要决定什么空布尔将代表。如果空应假,你可以这样做: 布尔newBool​​ = x.HasValue? x.Value:假的; 或者 布尔newBool​​ = x.HasValue&放大器;&安培; x.Value; ..
发布时间:2016-09-08 18:40:28 C#/.NET

为什么不应该总是在C#中使用可空类型

我一直在寻找这方面的一些很好的指导,因为这个概念是在.NET 2.0中引入的。 为什么我会永远想使用非空的数据类型在C#? (一个更好的问题是,为什么不选我可空类型默认情况下,只有使用非可空类型时,明确是有道理的。) 有一个'显著“性能击中选择在其非空的同行一个可空数据类型? 我更喜欢检查我的价值观对空,而不是Guid.empty,的String.Empty, DateTime. ..
发布时间:2016-09-08 18:15:15 C#/.NET

从'System.Int32'无效投地'System.Nullable`1 [System.Int32,mscorlib程序]

键入T = typeof运算(INT); //将得到这个动态 对象VAL = 5; //将得到这个动态 对象NVAL = Convert.ChangeType(VAL,T); //获得例外这里 我在上面的代码中得到InvalidCastException的。对于以上我可以简单地写诠释? NVAL = VAL ,但上面的代码动态执行。 我收到(非可空类型喜欢整数,浮点等) ..
发布时间:2016-09-08 18:14:48 C#/.NET

C#4:动态和可空<>

所以,我已经得到了各地方法之间该匿名对象传递一些代码: VAR促销=新的 { 文本= promo.Value, 起始日期=(的startDate == NULL)? 新可空<&日期时间GT;(): 新可空<&日期时间GT;(DateTime.Parse(startDate.Value)), =结束日期(结束日期== NULL)? 新可空<&日期时间GT;(): 新 ..
发布时间:2016-09-08 17:02:42 C#/.NET

查找通过反射性能可空类型

我检查通过反射一个对象的属性,并继续处理每个属性的数据类型。这里是我的(减少)来源: 私人无效ExamineObject(对象o) {$ B $型B型=默认值(类型); 类型属性类型=默认(类型); 的PropertyInfo []的PropertyInfo = NULL; 型= o.GetType(); 的PropertyInfo = type.GetProperties ..
发布时间:2016-09-07 13:15:17 C#/.NET

填零的合并运算符的结果隐式转换

通过关于C#空合并运算符(??)以下几点认识。 诠释?输入= -10; INT结果=输入? 10; //案例 - 我 //是一样的: INT结果=输入== NULL?输入:10; //案例 - II 虽然从定义和使用,案例一和案例二相同 这是令人惊讶地看到,在案例我的编译器能够隐式转换INT?为int,而在情况-II它显示错误:“错误1无法隐式转换类型' ..
发布时间:2016-09-07 11:49:31 C#/.NET

什么的?一个类型之后是什么意思?

可能重复:结果 的一个奇怪的C#语法 所以,我已经看到了一些代码周围,他们几个人用?之后的类型,像这样的: 私有点? LOC = NULL; 所以我想知道如果点?比不同点(不能把一个问号在我的句末,不然我就搞不清你们...:])。我使用的语言是C#的方式。 解决方案 T?是可空℃的简写(在C#); T> - 这样点是写作的另一种方式可空< ..
发布时间:2016-08-30 14:12:18 C#/.NET

类型为int的C#投对象为空的枚举

我只需要能够投对象可空枚举。对象可以是枚举,为空或int。谢谢! 公共枚举MyEnum {A,B} 无效将(对象的值) { System.Nullable< Myenum> VAL =(System.Nullable< MyEnum>)的价值; } 将(NULL); //工程 将(Myenum.B); //工程 将(1); //无效的转换异常! ..
发布时间:2016-08-30 13:42:20 C#/.NET

为什么可能为空< ==操作符的工作; T>当没有定义==?

我只是在看这个答案,其中包含的代码可空< T> 从.NET反射,我注意到两件事情: 是可空< T> 到 T 的 = = 运营商没有定义 鉴于这两个事实,我很惊讶,这个编译: 诠释?值= 10; Assert.IsTrue(价值== 10); 通过代码价值== 10 ,无论是值正在神奇地转换为 INT (因此允许 INT 的 == 要 ..
发布时间:2016-08-30 13:37:51 C#/.NET

之一,当应在C#中使用可空类型?

我已经多次要求在许多采访下列问题....但还是不能用一个简单的例子来说明他们... 什么是可空类型在C#? 在当前应在c#中使用可空类型? 您能否举一个简单的例子吗? 有什么建议? 解决方案 ..
发布时间:2016-08-29 13:44:59 C#/.NET

最好的方法来检查可空布尔在条件前pression(如果...)

我想知道什么是对可空的bool做条件检查最干净的和可以理解的语法。 在下面的好或坏的编码风格?有没有一种方法能恩preSS的条件更好/更干净? 布尔? nullableBool = TRUE; 如果(nullableBool ??假){...} 否则{...} 特别是如果(nullableBool ??假)的一部分。我不喜欢如果(x.HasValue&安培;&安培; x.Value)风格. ..
发布时间:2016-08-29 13:10:28 C#/.NET

可空对象必须有一个价值

有矛盾是在异常的描述: 可空对象必须有一个值(?!) 这就是问题所在: 我有一个 DateTimeExtended 类, 有 { 约会时间? MyDataTime; 诠释? otherdata;} 和构造 DateTimeExtended(DateTimeExtended myNewDT) { this.MyDateTime = myNewDT.MyDateTime. ..
发布时间:2016-08-29 13:03:06 C#/.NET

为什么&GT; =返回false时== null值返回true?

我有两个int类型的变量? (或可空&LT; INT&GT;如果你愿意)。我想要做的两个变量大于或 - 等于(> =)比较,但事实证明,这种返回false如果两个变量是空的,而显然==操作符返回true。 有人能向我解释为什么这是合乎逻辑的,因为> =运算符的语义定义包含“或”字? 解决方案 有大约在这个怪胎一个巨大的辩论时,该功能最初设计早在C 2.0#。问题是,C#用户完全习惯了这种 ..
发布时间:2016-08-29 12:55:34 C#/.NET

C#为什么不能一个可空INT被分配null作为值

有人能向我解释为什么一个可空INT不能被赋值为null值例如 诠释? ACCOM =(accomStr ==“诺瓦尔”空:?Convert.ToInt32(accomStr)); 什么是错的code? 解决方案 问题是不是空不能被分配​​到一个int?问题是,由三元运算符返回这两个值必须是同一类型,或者必须是隐式转换为其他的。在这种情况下,空不能隐式转换成int也不副银两,这样的露骨投是 ..
发布时间:2016-08-29 12:51:43 C#/.NET

如何获得可空的日期时间从数据库中

我的SQL Server数据库中包含可空DateTime值。我怎样才能将它们转换为可空DateTime对象在我的应用程序在C#? 这是什么,我认为这将是什么样子,但它并不: 日期时间? DT =(DateTime的)SqlDataReader的[0]; 解决方案 一个SQL空是不一样的.NET空;你要比较的System.DBNull.Value:对象SQLDATETIME = SqlD ..
发布时间:2016-08-28 15:16:46 C#/.NET

如何比较操作适用于空中断?

我开始学习可空类型,跑进以下行为。 虽然试图为空的INT,我看到比较运营商给了我意想不到的结果。例如,在我的下面code,输出我得到的是的“既和1相等”。注意,它不打印“空”为好。 诠释?一个=无效; 诠释? B = 1; 如果(A&LT; B) Console.WriteLine(“{0}比{1}更大”,B,A); 否则, ..
发布时间:2016-08-28 15:12:40 C#/.NET

为什么的ToString()上的一个空字符串导致空的错误,当的ToString()与空值可为空INT工作正常?

将selectedItem 有两个字段: 诠释? _cost 字符串_serialNumber 在这个例子中, _cost 和 _serialNumber 的将selectedItem 都是空。我读经由它们的属性将selectedItem 的领域,并与他们的价值观填写文本框,当... TextBox1.Text = selectedItem.Cost.ToString(); // ..
发布时间:2016-08-28 15:11:45 C#/.NET

如何改变在C#中默认是什么(T)的回报?

我想改变默认(T)的行为进行某些类。因此,而不是返回null供我参考类型,我想返回一个空的对象。 有点像 kids.Clear(); 变种小子= kids.Where(K =&GT; k.Age小于10).SingleOrDefault();如果(孩子是NullKid) { Console.Out.WriteLine(“Jippeie”); } 任何人都知道,如果这是在所有可能的? ..
发布时间:2016-08-28 15:06:12 C#/.NET