按契约/ C#4.0设计/避免ArgumentNullException

cor*_*ore 5 argumentnullexception c#-4.0

我非常厌倦检查我的所有参数为null,并在它们出现时抛出ArgumenutNullExceptions.

据我了解,C#4.0通过契约构造实现了一些设计.是否可以指定方法不接受C#4.0中的空参数?

另外,在此期间我可以做些什么(也许是一个属性?)来避免这种单调的检查null和抛出的任务?

ori*_*rip 4

您可以创建一个NotNull<T>有帮助的通用类,但会有一些副作用。请参阅Robert Nystrom 的博客文章