私はいくつかのページを持ち、それぞれがData
というプロパティを持っています。別のページでは、私はこのように、このデータを設定しています:割り当ての左側にヌル条件付き演算子を使用する
if (MyPage1 != null)
MyPage1.Data = this.data;
if (MyPage2 != null)
MyPage2.Data = this.data;
if (MyPage3 != null)
MyPage3.Data = this.data;
はMyPage
上のヌル条件演算子を使用するすべての可能性はありますか?私はこのような何かを考えています:
MyPage?.Data = this.data;
しかし、私はこのようにそれを書くとき、私は次のエラーを取得:
The left-hand side of an assignment must be a variable, property or indexer.
を私はMyPage
がnullになる可能性があるため、それは知っていると左手側はもはや変数ではありません。
それは、私はすでにそれを持っているように、私はそれを使用することができないということではないのですが、私はちょうどこの上のヌル条件演算子を使用するすべての可能性があるかどうかを知りたいです。
あなたは 'SetData'メソッドを作成し、' MYPAGE1 .SetData(this.data)を行うことができるはず。?[なぜC#6の ' –
可能性の重複。0はNull伝播演算子を使用するときnull以外のヌル可能な構造体のプロパティを設定させませんか?](http://stackoverflow.com/questions/31035022/why-c-sharp-6-0-doesnt-let-to -set-of-non-null-nullable-struct-when) –
Null伝播/条件演算子はプロパティにアクセスするためのものであり、プロパティを設定するものではありません。したがって、あなたはそれを使用することはできません。 –