コードインスペクション: 可能性のある '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);
}
2026 年 6 月 12 日