什么是最适合的.Net异常类型,当您有一个必须具有至少一个项目的集合属性初始化的类时?集合未被初始化的最合适的例外情况?
我在想这将是一个ArgumentOutOfRangeException
,但有什么更合适的基础上集合?
什么是最适合的.Net异常类型,当您有一个必须具有至少一个项目的集合属性初始化的类时?集合未被初始化的最合适的例外情况?
我在想这将是一个ArgumentOutOfRangeException
,但有什么更合适的基础上集合?
您可以随时创建自己的MyCollectionNotInitialized
例外。我认为这比使用任何不合适的例外要好。
作为一个例子,你可以看看System.Linq.Queryable.Single
方法,这是IQueryable
接口的扩展方法,如果集合中有多个元素,则抛出InvalidOperationException
。 恕我直言,InvalidOperationException
是比ArgumentOutOfRangeException
更差的选择,但我假设,因为微软已经使用InvalidOperationException
,似乎在.NET中没有相关的异常类。
谢谢,我应该提到我已经考虑编写自己的自定义异常,但我特别寻找最合适的标准.Net异常类型。 +1的建议虽然。 – 2010-03-25 10:18:11
+1用于创建您自己的例外。这听起来很适合你的应用程序,所以创建你自己的异常将是我的方式。 – PatrickSteele 2010-03-25 12:08:11