本文へスキップ
BecomeCoder

C#のエラー · エラー11

ArgumentNullException ― null を渡してはいけない引数に渡した(実行時)

null を受け付けない引数に null を渡すと、呼び出し先のメソッドが投げます。NullReferenceException と違い、呼び出し側の入力チェックで防げます。

出るコード

string input = null;
int n = int.Parse(input);   // null を渡した

エラーメッセージ

System.ArgumentNullException: Value cannot be null. (Parameter 's')

直し方

呼び出す前に null チェックするか、int.TryParse を使います。ArgumentNullException.ThrowIfNull(input) で自分のメソッドにも同じ防御を入れられます。