2011-10-17 20 views
2

我发展,这将适用于应用对象的实例,一些验证规则验证助手类应用一些验证对象上的图案。 我发现了大约Hibernate验证关于C#的问题,而是什么呢?我需要在C#中

+0

你检查[NHibernate的验证器(http://stackoverflow.com/questions/tagged/nhibernate-validator)? –

+0

@FredrikMörk>>不,我没有,我会和回信,感谢 –

+0

它的强大,但不知何故,复杂的,需要大量的阅读:( –

回答

2

最佳做法是,你应该验证规则申报到使用System.ComponentModel.DataAnnotation您的模型/实体 - 这会不会烤验证这始终是很好的实施。

然后使用验证框架,这是不是一个艰难的选择,并且取决于您使用其它技术。例如,如果您使用MVC,那么它具有内置机制,或者如果您使用EF,那么它将为您执行此操作。

编辑

例子:

公共类NursingTreatment {

[DataType(DataType.Time)] 
    public DateTime? SomeDate { get; set; } 

    [StringLength(500, ErrorMessage = "This field may not be longer than 500 characters.")] 
    public string LongText{ get; set; } 


} 
+0

注解只能用如果用户不允许在运行期间更改验证规则... –

+0

没错,但我说的病例约99%,其中规则是**域的一部分** - 因此不会改变 – Aliostad

+0

那么它是不是真的99%百分比的至少行业我的工作。 ... ;-) –

0

答案可能取决于框架。例如,如果使用WPF,则可以实现IDataErrorInfo接口,或者在绑定中引发异常并使用ValidatesOnExceptions。