我们有一个Create操作,它对传入的实体运行验证。如果这个实体无效,应该抛出什么异常?
最初,我们要抛出ApplicationException,但经过一些研究后,这似乎是不正确的:(来自MSDN上的文章):
X不要从ApplicationException
投掷或派生。
我们应该创建自定义异常并从ApplicationException
继承吗?
.NET框架中是否存在我们应该使用的异常?
或许,我们不应该抛出异常吗?
我不确定......
更多细节:
在此特定情况下,Create方法创建地址更改请求。业务规则声明一次只能有一个地址更改请求。验证错误可能来自以下两种情况之一:
未设置实体的属性,或设置为不正确的值
地址更改请求已存在。
答案 0 :(得分:1)
你应该抛出InvalidArgumentException