问题标签 [null-coalescing-operator]
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.
c# - ASP.NET MVC / C# - 空合并运算符,类型
我正在尝试在我的页面上创建分页。用户可以选择每页显示的项目数,然后将首选大小保存为 cookie。但是当我尝试在查询字符串参数和cookie之间进行选择时,出现了错误:
是什么导致了这个错误?如何解决?
c# - Using null-coalescing as a replacement for try catch block
How come I get an invalid cast exception when trying to set a NULL
value returned from the database inside Comments
which is of type Int32
.
I am trying to replace this:
With this:
The two are in different contexts, but you should get the idea. Instead of using a try catch block I am trying to solve this in a more elegant way.
Thanks.
UPDATE
It is stored as a nullable integer in the database.
I just want to thank everyone who answered or posted on this question, everything was very informative. thanks!
c# - 给出指定强制转换的空合并运算符对短整数无效
有谁知道为什么最后一个不起作用?
c# - C# 3.5 中 '??' 运算符的奇怪行为
这是一个错误还是我解释'??'-操作员错了?查看下面的 get 属性和评论。
我正在使用 C# .NET 3.5
编辑:对于刚问到这个问题时看到这个问题的每个人,很抱歉,其中的一些错误让每个人都感到困惑。
感谢所有伟大而快速的反馈!我现在已经理解我犯的错误了。谢谢!
xna - 操作员 ??在 if 语句内的 XNA 4 中合并 null
如何在此文本下修复我的代码?
错误:
如果它为空,我希望创建新的 puncts 并将第一个元素添加到其列表中。我可以使用运算符吗???
如何在 if
语句中使用它?
c# - Null-Coalescing 运算符结果的隐式转换
对 C# 中的空合并运算符 (??) 有了以下理解。
而根据定义和用法,案例 I 和案例 II 是相同的。
令人惊讶的是,在 Case-I 中编译器能够隐式转换 int? 到 int 而在 Case-II 中它显示错误:'错误 1 无法隐式转换类型'int?' 'int'"
关于空合并运算符,我缺少什么?
感谢您的关注。
c# - 这种方法尝试的术语是什么?
我不知道:
- 如果这行得通。
- 如果这是个好主意。
- 它叫什么,以便了解更多信息。
但我认为意图是相当明显的。
预期用途:
var customer = order.Sale.OrNew().Customer.OrNew().Name
我在做什么?这是疯狂的还是有帮助的?似乎很有帮助。
c# - C# 合并运算符的原子性
我今天在我们的代码库中遇到了一些单例代码,我不确定以下是否是线程安全的:
该语句等价于:
我相信 ??只是一个编译器技巧,生成的代码仍然不是原子的。换句话说,两个或多个线程可以在将 _sentence 设置为新的 Sentence 并返回之前发现 _sentence 为空。
为了保证原子性,我们必须锁定那段代码:
这一切都正确吗?
c# - 可以用吗??(合并运算符)与 DBNull?
如果我有类似于以下的代码:
它抛出错误:
对象不能从 DBNull 转换为其他类型。
定义intVal
为可为空的 int 不是一种选择。有没有办法让我做到以上?
c# - 检查空值的正确方法是什么?
我喜欢 null-coalescing 运算符,因为它可以很容易地为可空类型分配默认值。
太好了,除非我需要用x
. 例如,如果我想检查Session
,那么我通常最终不得不写一些更冗长的东西。
我希望我能做到这一点:
但是你不能因为在.ToString()
空检查之前被调用,所以如果Session["key"]
为空,它会失败。我最终这样做:
在我看来,它比三行替代方案更有效并且更好:
即使这样有效,我仍然很好奇是否有更好的方法。似乎不管我总是要引用Session["key"]
两次;一次用于检查,再次用于分配。有任何想法吗?