如果我期望一个空值并获得一个定义的值(在一个属性的getter中)并想要抛出异常,那么在csharp中执行此操作的正确方法是什么?在这种情况下,是否已经定义了哪些有意义?
答案 0 :(得分:8)
我的猜测是:
throw new
ArgumentException("Parameter was expected to be null, value was provided.");
ArgumentOutOfRangeException
也可能有用,但通常在有明确定义的范围而不是null而不是null时使用。
答案 1 :(得分:3)
我可能会使用ArgumentOutOfRangeException
答案 2 :(得分:0)
我已经看过InvalidOperationException
,因为在尝试设置两次的情况下。例如,
if(displayMessage != null)
throw new InvalidOperationException("The display message may not be set more than once.");
displayMessage = myAwesomeMessage;