観察: テキストがnullの場合、このメソッドはTrueを返します。私はFalseを期待していました。
return text?.IndexOf('A') != -1;
上記の行を ILSpy を使用して反映 (または IL を検査) すると、次のコードが生成されます。
return text == null || text.IndexOf('A') != -1;
私の期待に応えるために本当に必要なものは次のとおりです。
return text != null && text.IndexOf('A') != -1;
質問: Null 条件付きコードがOR式を生成した理由について、誰かが適切な説明を持っていますか?
完全なサンプル: https://dotnetfiddle.net/T1iI1c