SORU
21 NİSAN 2009, Salı


İstisnalar geçersiz veya beklenmeyen parametreleri için atılan ne olmalıdır .NET?

Ne tür istisnaların geçersiz veya beklenmeyen parametreleri için atılmış olmalıdır .NET? Ne zaman başka bir yerine birini seçtim?

Takip:

Hangi özel bir fonksiyon bir tamsayı bir ay karşılık bekliyor ve sana geçmiş olur '42'? Bu "aralık dışında bir koleksiyon değil mi? olsa bile" kategori içine düşecek

CEVAP
21 NİSAN 2009, Salı


Kullanmak istiyorum: ArgumentException, ArgumentNullException, ArgumentOutOfRangeException

Edit

Sana da at gibi Yoooder işaret eder feryat (oy cevabı olarak), bu InvalidOperationException mantıklı eğer verilen geçerli bir argüman ama yöntem olarak değil, geçerli bir argüman dayalı mevcut durumu.

Ayrıca eğer bağımsız geçirilen sadece desteklenen değilse NotSupportedException atmak olabilir. Bir Ftp istemcisi hayal, ve müşteri desteği olmayan bir komut geçmek. Bu doğru bir kullanım olurdu.

Hile en iyi yöntem geçerli durumda denmesini neden ifade eden özel durum.

Edit

Tüm msdn işaret güncelledim link için teşekkürler.

Edit

Senin takip yanıt olarak, bir ArgumentOutOfRangeException atmak Web sitesini ziyaret bu durum hakkında ne diyor bakın:

ArgumentOutOfRangeException atılır bir yöntem çağrıldığında ve en az argümanlardan biri için geçirilen yöntem değil nullNothingnullptra null başvuru (Nothing Visual Basic) ve geçerli bir değer içermiyor.

Bu durumda bir değer geçirerek ama o aralığı 1-12 olduğu için geçerli bir değer değil. Ancak, yol belgesi, size API atar ne açık olun. ArgumentOutOfRangeException diyebilirsiniz başka bir geliştirici ArgumentException diyebilir çünkü. Sakin olun ve davranış belgesi.

Edit

Yoooder yine yorumlarda belirttiği gibi belgeleri iyi ama bir noktaya kadar. İdeal durum neden yanlış olduğunu ve bunu düzeltmek için nasıl, neyin yanlış gittiğini hakkında ayrıntılı olmalıdır. Hata iletileri belgelerde veya diğer kaynakları yardım noktası bayılıyorum.

Örneğin Microsoft this iyi bir ilk adım oldu. Ne zaman hata onlar size hatayı messgae KB makalesi. İyi değil, özellikle başarısız neden söyle.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HBO

    HBO

    17 Mayıs 2006
  • TheDamnWreckless

    TheDamnWreck

    12 Temmuz 2010
  • Vagrant Records

    Vagrant Reco

    8 Mayıs 2006