2

私は少し混乱しています。

MSDNがArgumentExceptionについて言っていることは、次のとおりです。

「メソッドに提供された引数の1つが無効な場合にスローされる例外。」

したがって、メソッドに渡された引数が有効でない場合は、例外をスローします。

しかし、理由からブール値と文字列を返すことが提案されていることもわかりました。-例外をスローする代わりに。

それで、

質問:validationgメソッドのパラメーターの場合、およびパラメーターが無効な場合、Validationメソッドはいつ例外をスローする必要がありますか?

4

1 に答える 1

9

引数を検証することを目的とするメソッドがある場合 (たとえば、これは有効なユーザー名とパスワードの組み合わせですか)、必ず bool (false = 無効) と理由を返します。予期される状況で例外をスローしないでください (予期されていない場合、なぜ検証する必要があるのでしょうか?)

「Process」メソッドがある場合は状況が異なります。有効なパラメーターが必要なため、無効な場合に例外をスローする (問題を示す) のが合理的です。

于 2013-01-09T08:10:52.113 に答える