问题标签 [nullable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
59765 浏览

c# - ? 的可空类型问题:条件运算符

有人可以解释为什么这在 C#.NET 2.0 中有效:

...但这不是:

后一种形式给了我一个编译错误“条件表达式的类型无法确定,因为 '<null>' 和 'System.DateTime' 之间没有隐式转换。”

不是我不能使用前者,而是第二种风格更符合我的其余代码。

0 投票
4 回答
2209 浏览

c# - 可空的: 和重载的运算符,布尔?& 布尔值

  1. 为什么为 bool 定义了运算符 '&'?,而运算符 '&&' 不是?
  2. 这 1) 究竟是如何布尔的?& 布尔?2)布尔?和布尔工作?

Nullable 上的任何其他“有趣”运算符语义?泛型 T 的任何重载运算符?

0 投票
3 回答
9528 浏览

xml-serialization - XmlSerializer 可以反序列化为 Nullable?

我想反序列化包含一个元素的 XML 消息,该元素可以标记nil="true"为具有 type 属性的类int?。我可以让它工作的唯一方法是编写我自己的NullableInt类型来实现IXmlSerializable. 有更好的方法吗?

我在博客上写了完整的问题和解决方法。

0 投票
4 回答
134462 浏览

c# - c#为什么不能将可为空的int赋值为null

解释为什么不能为可为空的 int 分配 null 的值,例如

那个代码有什么问题?

0 投票
1 回答
2246 浏览

mysql - MySQL 组合 PK 与可为空的 FK

首先,让我先声明一下我真的是一个非常糟糕的数据建模师。我只知道危险。

我正在构建的表有四个外键,其中两个引用同一个表。这是该表的创建语句。

我在这篇文章中关注的索引是fk_reputation_log_userfk_reputation_log_user1。每个声誉事件都有一个给予者,但只有一些有接收者。我希望这个FK 可以为空,但我不知道该怎么做,或者它是否被“允许”。

我还玩弄了将所有 FK 列作为主键的一部分以对重复日志条目进行数据库级保护的想法——但这不会起作用,因为 PK 列必须为 NOT NULL。

如果您需要更多详细信息,请在评论中说明。谢谢!

(是的,这是针对与 SO 没有太大不同的声誉系统)

0 投票
5 回答
6155 浏览

linq - 如何将 null 传递给 linq 中的 int 列

我们如何将空值分配给 LINQ 中的 int 列。例如。

此处如果 Request["radius"] 为 null 则给出错误。

我可以通过这个传递 0,但我需要更改许多已经存在的程序。

提前致谢。
阿尼尔

0 投票
14 回答
111268 浏览

c# - 如何检查一个对象是否可以为空?

如何检查给定对象是否可以为空,换句话说,如何实现以下方法...

我正在寻找可为空的值类型。我没有想到引用类型。

obj现在引用类型为bool( System.Boolean) 的对象,其值等于true。我真正想要的是一个类型的对象Nullable<bool>

所以现在作为一种解决方法,我决定检查 o 是否可以为空,并在 obj 周围创建一个可以为空的包装器。

0 投票
3 回答
1980 浏览

.net - 装箱/拆箱和可空?

我知道装箱和拆箱是关于铸造(真实类型到对象......对象到真实类型)。但我不明白 MSDN 对 Nullable 的看法。这是我不明白的文字:

当一个可为空的类型被装箱时,公共语言运行库会自动装箱 Nullable 对象的基础值,而不是 Nullable 对象本身。也就是说,如果 HasValue 属性为 true,则 Value 属性的内容被装箱。当可空类型的基础值被拆箱时,公共语言运行库会创建一个新的可空结构,该结构已初始化为基础值。来源

当您将对象更改为真实类型时,可以为空的真实类型变量将是对象的类型?我不明白?

0 投票
4 回答
11580 浏览

.net - 将 Winforms 控件数据绑定到可为空类型的最佳方法?

我目前正在使用 winforms 数据绑定来连接数据编辑表单。我通过 CodeSmith 使用 netTiers 框架来生成我的数据对象。对于允许空值的数据库字段,它会创建可空类型。我发现使用 winforms 数据绑定控件不会正确绑定到可为空的类型。

我在网上看到了一些解决方案,建议人们创建新的文本框类来处理可以为空的类型,但这可能会很痛苦,不得不在我已经创建的表单上换掉文本框。

最初我认为使用扩展方法来做到这一点会很棒。基本上为文本框类创建一个扩展属性并绑定到它。从我有限的扩展方法经验和在线检查来看,您似乎无法进行扩展属性。据我所知,绑定必须通过属性,因为它需要能够获取或设置值,因此扩展方法不起作用。

我很想找到一种干净的方法来使用扩展方法之类的方法来改造这些表单,但是如果我必须创建新的文本框和组合框控件,我会这样做。

由于需要在 Windows 2000 上运行,我的项目目前仅限于 .Net 2.0。

有什么建议么?

0 投票
6 回答
1384 浏览

c# - 如何在数据访问层 (C#) 中表示空值

只是想知道 DAL 是否有任何最佳实践来表示空值(来自可为空的列)。

我们目前有自己的内部 DAL,并用 int.MinValue 表示空值。但是,这种上升与开发人员有关,他们认为在比较值时,我们故意将另一个“附加”值强加到 int.MinValue 上,而 int.MinValue 用于 DAL 层中的空值这一事实令人困惑。所以其他人提出了 .net 2.0 的 NullValue,但我们发现这种方法也存在性能和语法问题:

那么,您对此有何看法?其他著名的 ORM 如何处理空值?是否有围绕这个问题的最佳实践?