如何在类实例成员上设置编译时验证

时间:2011-02-02 11:29:32

标签: c# silverlight-4.0 c#-4.0

我创建了一个类如下:

class myclass
{
  Public  int myint;
}

现在我想限制myint的范围(最小5和最大10)。

我想如果任何一个设置myint的值不在范围内,它将给出编译时错误(不是运行时错误) 请帮助我如何实现它。

2 个答案:

答案 0 :(得分:2)

这是实验性的,但您可以查看Spec#。它可以为您提供更多的编译时检查。代码契约是另一种选择(但仅在某些版本的Visual Studio中可用)。

修改

看起来代码联系人现在可以作为独立下载使用!见this page

答案 1 :(得分:0)

你在.NET中没有这种开箱即用的功能,但是有一些验证引擎允许你根据某些规则验证某个对象的实例。

阅读:

我建议您使用NHValidator,因为它非常易于使用,需要零配置并且具有良好的社区支持。另一个好处是你可以在任何层(业务,演示......)中使用它,因为它是面向属性的,这意味着你不需要继承任何类或实现接口以便在任何地方使用它!