C#错误与空条件运算符并等待

User_FSharp1123

我在C#中使用新的空条件运算符时遇到了一个有趣的System.NullReferenceException。如果“ MyObject”为null,则以下代码为我提供NullReferenceException:

await this.MyObject?.MyMethod()

我曾希望,如果“ MyObject”为null,则不会简单地调用“ MyMethod”,还是我误解了空条件运算符的目的?

卡泽姆·阿赫加里

您可以添加??运算符,以便如果?.返回空任务,请改用CompletedTask。

await (this.MyObject?.MyMethod() ?? Task.CompletedTask)

我曾希望,如果“ MyObject”为null,则不会直接调用“ MyMethod”。

确实如此。?.运算符返回空任务,而不是打电话MyMethod因为您无法等待空任务,所以会产生空引用异常。必须初始化任务。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

试图了解?C#中的(空条件)运算符

来自分类Dev

C#:返回对象的空条件运算符

来自分类Dev

方法参数中的 C# 空条件运算符

来自分类Dev

空条件后跟点运算符 C#

来自分类Dev

Ruby空条件运算符

来自分类Dev

有什么建议吗?运算符/ C ++的空条件运算符?

来自分类Dev

了解C#等待运算符

来自分类Dev

如何为类似于空条件运算符的集合创建空条件运算符?

来自分类Dev

使用空条件运算符时出现错误:语法错误,“:”应为

来自分类Dev

C#中的条件运算符

来自分类Dev

C# ?。条件运算符

来自分类Dev

C#6空条件运算符-作为代码切换器?

来自分类Dev

C#6空条件运算符是否检查.Any()?

来自分类Dev

C#6中的空条件运算符和字符串插值

来自分类Dev

C#6空条件运算符不适用于LINQ查询

来自分类Dev

Python等效于C#6中引入的空条件运算符

来自分类Dev

Weakreferences和空条件运算符的怪异C#GC行为

来自分类Dev

空条件运算符仅求值一次

来自分类Dev

空条件运算符兼容性

来自分类Dev

事件处理程序和空条件运算符

来自分类Dev

空条件运算符可“无效”数组元素的存在

来自分类Dev

在分配的左侧使用空条件运算符

来自分类Dev

空条件运算符不能用于分配吗?

来自分类Dev

“空条件运算符”是用词不当吗?

来自分类Dev

C#条件运算符错误仅赋值,调用,递增,递减,等待和新对象表达式可以用作语句

来自分类Dev

为什么C#空条件运算符不能与Unity可序列化变量一起使用?

来自分类Dev

有没有办法在C#5中模仿C#6空条件运算符

来自分类Dev

C#条件运算符在OR运算符中的差异

来自分类Dev

C#条件编译中是否存在OR运算符?

Related 相关文章

热门标签

归档