参照ライン:このコードの行でなぜArgumentNullExceptionですか?なぜSystem.NullReferenceExceptionではないのですか?以下のコードの
DataTable [] _tables = null;
// Throws System.NullReferenceException
_tables.GetType();
// Throws System.ArgumentNullException
_tables.Count();
私は_tables
参照を持っており、そのシステムにアクセスしようとしている機能GetType()
とCount()
を定義し、両方のスロー例外が、なぜ私たちは同じ値を持っているので.Count()
は、System.ArgumentNullException
をスロー参考のためにnull
?
[ArgumentNullExceptionまたはNullReferenceExceptionの可能な複製は拡張メソッドからですか?](http://stackoverflow.com/questions/463302/argumentnullexception-or-nullreferenceexception-from-extension-method) –
@ 280Z28私はそのqueでPatrick Hägneは、「nullインスタンスを呼び出す拡張メソッドが呼び出されたときにスローする最高の例外タイプ」を要求します... –
http://blog.mischel.com/2013/05/16/null-parameters-in-extension-methods/ –