Winform / usercontrols - 属性为null时要使用的异常类型

时间:2011-09-12 10:58:57

标签: c# winforms user-controls

此问题之前可能已经以某种形式提出过,但我还没有在winform和usercontrols的背景下看到答案。

据我所知,usercontrols和winform应该有无参数构造函数(因此它们在设计器中正常工作)。因此,使用属性是一个很好的解决方法。但是,如果未设置重要属性,您应该抛出什么异常(如果有的话)?

从属性getter中抛出一个参数null异常是一个好主意吗?或者我应该在方法的开头检查,并从那里抛出异常?

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

InvalidOperationException似乎合适。给定对象的当前状态,该操作无效。但是,我也看到它说你不应该抛出框架异常,而是自己派生。我不确定该相信什么。

编辑:根据http://msdn.microsoft.com/en-us/library/xhcbs8fz.aspx的示例,我认为只要邮件是特定的,就可以抛出InvalidOperationException。