gpt4 book ai didi

c# - 在 LINQ 中使用可空列测试不等式

转载 作者:太空宇宙 更新时间:2023-11-03 11:19:40 24 4
gpt4 key购买 nike

在 LINQ 中对可空列执行不等式测试而无需转换可空类型是否安全?

在 T-SQL 中,您必须使用 ISNULL()。但是在 LINQ 中我可以安全地做吗?:

mytable.nullablecol != 1

最佳答案

是的,这样做是安全的。

编辑:鉴于您的评论,问题可能是 null == -1 的结果为 null,而不是 true(在 SQL 中)。所以你可以使用查询:

mytable.nullablecol != 1 || mytable.nullablecol == null

当您想与一个可能为空的值比较是否相等时,变得更加棘手。你必须明确地满足这一点。例如:

int? x = GetId();
var query = from foo in bar
where foo.X == x || (foo.X == null && x == null)
select ...;

关于c# - 在 LINQ 中使用可空列测试不等式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11448755/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com