期望空值时抛出异常?

时间:2010-08-03 21:17:12

标签: c# exception-handling

如果我期望一个空值并获得一个定义的值(在一个属性的getter中)并想要抛出异常,那么在csharp中执行此操作的正确方法是什么?在这种情况下,是否已经定义了哪些有意义?

3 个答案:

答案 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;