gpt4 book ai didi

c# - 在赋值的左侧使用空条件运算符

转载 作者:太空宇宙 更新时间:2023-11-03 15:02:08 25 4
gpt4 key购买 nike

我有几个页面,每个页面都有一个名为 Data 的属性。在另一个页面上,我将这样设置此数据:

if (MyPage1 != null)
MyPage1.Data = this.data;
if (MyPage2 != null)
MyPage2.Data = this.data;
if (MyPage3 != null)
MyPage3.Data = this.data;

是否有可能在 MyPage 上使用 null 条件运算符?我在想这样的事情:

MyPage?.Data = this.data;

但是当我这样写的时候,出现如下错误:

The left-hand side of an assignment must be a variable, property or indexer.

我知道这是因为 MyPage 可能为空,左侧不再是变量。

并不是说我不能像我已经拥有的那样使用它,而是我只是想知道是否有可能对此使用 null 条件运算符。

最佳答案

空传播运算符返回一个值。由于您必须在赋值的左侧有一个变量,而不是一个值,因此您不能以这种方式使用它。

当然,您可以使用三元运算符来缩短内容,但另一方面,这并不能真正提高可读性。

Joachim Isaksson 对您的问题的评论显示了一种应该有效的不同方法。

关于c# - 在赋值的左侧使用空条件运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45731552/

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