【发布时间】:2015-04-10 12:39:25
【问题描述】:
检查作为string 传递的参数时,您会抛出ArgumentException。
void CheckName(string name)
{
if (name != "Alice")
{
throw new ArgumentException("Name is not Alice.");
}
}
但是,当将模型(对象)传递给函数时,您检查模型的属性并希望抛出异常。哪个异常是正确的抛出?还是ArgumentException吗?
void CheckUser(UserModel model)
{
if (model.Name != "Alice")
{
throw new ArgumentException("Name is not Alice."); // ?
}
}
我应该在异常中包含paramName 参数吗?
paramName 应该是 Name 还是 Model.Name?
【问题讨论】:
-
IMO 我会使用
new ArgumentException("UserModel.Name is not Alice", "model");
标签: c# .net exception argumentexception