假设你想像这样抛出Exception
:
'无法分配带有提供的ID的项目。'
并且您不想编写您的自定义Exception类。你会用什么预定义Exception
课程?
(我说的是所有继承自Exception
)
答案 0 :(得分:3)
答案 1 :(得分:3)
为什么不能分配项目?是因为提供的ID(可能是作为参数)是不合适的?如果是这样,它应该是ArgumentException
。如果是因为项目的状态不适合分配,那么InvalidOperationException
会更好。如果是其他内容,请提供更多详细信息。
当然,可能没有任何合适的东西。有时最好的方法就是编写自己的异常类。
答案 2 :(得分:2)
听起来像InvalidOperationException
给我......
答案 3 :(得分:0)
我的实践(在Java世界中)是区分两种情况:
你让我做一些愚蠢的事情 - InvalidOperationException或InvalidArgument适用于此
我暂时被打破了,如果再试一次可能会有效
第二种情况我看不到我的TransientException的.NET等价物。我个人会为SystemException扩展一个新的异常类。