JetBrains Rider 2024.1 ヘルプ

コード検査: 可能性のある 'System.InvalidOperationException'

null 許容型の変数をその基になる型にキャストする前に、値が null でないことを確認する必要があります。以下の例では、null 許容の double x があり、x が null の場合、式 (double)x は例外をスローします。

JetBrains Rider は null をチェックすることを提案します。

public void Method(double? x) { var y = (double)x; Console.WriteLine(y); }
public void Method(double? x) { if (x != null) { var y = (double)x; Console.WriteLine(y); } }

あるいは、JetBrains Rider は式が null ではないという主張を追加することができます。

public void Method(double? x) { var y = (double)x; Console.WriteLine(x); }
public void Method(double? x) { Debug.Assert(x != null, "x != null"); var y = (double)x; Console.WriteLine(x); }