在.NET中,如果值爲Integer.MinValue或Integer = 0(假設0不是有效值),爲整數引發參數空異常更合適嗎?整數的ArgumentNullException
1
A
回答
8
拋出一個ArgumentNullException不合適,除非該參數實際上是null。相反,拋出一個ArgumentOutOfRangeException(最好用一條消息通知用戶int的值實際上是可以接受的)。當調用的方法
ArgumentOutOfRangeException被拋出,並傳遞給方法的參數至少有一個是不是空引用(沒有在Visual Basic),不包含有效的值。
2
嗯,我想如果你使用的是int,那麼最好是說InvalidArgumentException。
另外,你可以通過聲明他們爲INT可以通過聲明爲int?(特別是如果你期望int值爲空值)
0
如果參數不爲空,則不要拋出ArgumentNullException
。它可能會更合理地拋出ArgumentException
,explained here.
編輯:ArgumentOutOfRangeException
可能是更好的,如上面的Avenger546建議。
相關問題
- 1. WindsorControllerActivator中的ArgumentNullException
- 2. Throwing ArgumentNullException
- 3. NServiceBus:NServiceBus引發的「ArgumentNullException」
- 4. MVC5上的ArgumentNullException DropdownListFor
- 5. 改變幀的ArgumentNullException
- 6. ArgumentNullException在asp.net MVC
- 7. ArgumentNullException與ElemMatch
- 8. NullReferenceException vs ArgumentNullException
- 9. 拋出ArgumentNullException
- 10. ResxResourceReader拋出ArgumentNullException
- 11. ToList() - ArgumentNullException處理
- 12. ArgumentNullException通過WCF
- 13. Protobuf-Net ArgumentNullException
- 14. ArgumentNullException調用RoutedEvent
- 15. Folder.Bind引發ArgumentNullException
- 16. DropDownListFor拋出ArgumentNullException
- 17. CopyToDataTable方法 - ArgumentNullException
- 18. ArgumentNullException與RhinoMocks 3.6
- 19. 無參數名稱的ArgumentNullException消息
- 20. ArgumentNullException創建新的數據時
- 21. ArgumentNullException我想不通的數組中
- 22. ArgumentNullException了未處理
- 23. MVC ViewModel返回ArgumentNullException
- 24. Mango e.ChosenPhoto引發ArgumentNullException
- 25. ArgumentNullException對象需求
- 26. 實體框架,ArgumentNullException
- 27. ArgumentNullException使用列表
- 28. 在構造函數中拋出ArgumentNullException?
- 29. Activator.CreateInstance針對參數「類型」拋出ArgumentNullException
- 30. 訪問參數屬性時使用ArgumentNullException