JetBrains Rider 2026.1 Help

コードインスペクション: null 許容参照型のアノテーションにより、式は常に「true」または「false」になります

このインスペクションは、 null 許容参照型 (NRT) が有効な場合に C# 8.0 以降で動作し、NRT 契約に基づいて常に true または常に false である式を報告します。

NRT は、null 値可能性分析の全体的な精度を向上させますが、値が #nullable コンテキストのないコードから取得される場合など、NRT 契約に違反する場合があります。 このような場合、null 値可能性チェックで誤検知の警告が表示されることがあります。 null 値可能な API 契約を無視し、コード内の値に対する以前の操作で null 値になるかどうかが保証されている場合にのみ問題を報告するように選択できます。

この動作は、 Alt+Enter メニューから直接変更できます。

JetBrains Rider: null 許容参照型

…または JetBrains Rider 設定 の エディター | インスペクション設定 ページで null 許容参照型の警告モード オプションを使用します。

JetBrains Rider が null 許容 API コントラクトを無視する場合、null 許容性分析はプログラムの制御フローに基づいて冗長な null チェックを検出します。 そのために別のインスペクションを使用します。 例えば:

var myString = ApiMethod(); if (myString is null) throw new ApplicationException("the string is null"); // warning 'Expression is always true' // 'myString' cannot be null because it's already checked for null in our code if (myString != null) Console.WriteLine(myString);

NRT と JetBrains Rider による NRT サポートの詳細については、こちらのウェビナー録画をご覧ください:

2026 年 6 月 12 日