【发布时间】:2009-08-31 05:42:17
【问题描述】:
我正在研究一种在给定字符串参数的情况下执行某些操作的方法。字符串参数的有效值是 null 或 string.Empty 以外的任何值。所以我的代码看起来像这样。
private void SomeMethod(string someArgument)
{
if(string.IsNullOrEmpty(someArgument))
throw new ArgumentNullException("someArgument");
// do some work
}
那里没有什么太令人兴奋的了。我的问题是,即使字符串等于 string.Empty,也可以抛出 ArgumentNullException 吗?因为从技术上讲它不是空的。如果你认为它不应该抛出 ArgumentNullException,那么应该抛出什么异常?
【问题讨论】:
-
当字符串为 "" 时抛出 ArgumentNullException 具有误导性。
-
我同意,唉,我以前这样做的原因是因为“乔”给出的答案,它在 .net 框架代码中是这样使用的。
标签: .net