次の方法で共有


例外: invalidArg 関数

invalidArg 関数では、引数の例外を生成します。

構文

invalidArg parameter-name error-message-string

解説

前の構文のパラメーター名は、引数が無効であるパラメーターの名前を持つ文字列です。 error-message-string は、リテラル文字列であるか、型 string の値です。 これは、例外オブジェクトの Message プロパティになります。

invalidArg によって生成される例外は System.ArgumentException 例外です。 次のコードは、例外をスローするための invalidArg の使用例を示しています。

let months = [| "January"; "February"; "March"; "April";
                "May"; "June"; "July"; "August"; "September";
                "October"; "November"; "December" |]

let lookupMonth month =
   if (month > 12 || month < 1)
     then invalidArg (nameof month) (sprintf "Value passed in was %d." month)
   months[month - 1]

printfn "%s" (lookupMonth 12)
printfn "%s" (lookupMonth 1)
printfn "%s" (lookupMonth 13)

出力は次のようになり、その後にスタック トレースが続きます (ここには示しません)。

December
January
System.ArgumentException: Value passed in was 13. (Parameter 'month')

関連項目