2010-02-04 42 views
1

是否有可能与NHibernate验证器得到一个验证器,将验证一个或其他属性?在下面的例子中,名字或姓氏是必需的。NHibernate验证器的一个值或另一个

[OneOrOther("Group")] 
    public string FirstName {get; set; } 

    [OneOrOther("Group")] 
    public string Surname {get; set; } 

回答

2

是的,你可以在对象上创建一个属性测试条件是否成立,然后使用NHibernate的装饰之一,以检查它是有效的,即如此。

从文档:

AssertTrue性能检查,该方法的计算结果为真(可用于在代码中表达,而不是注解约束)

这是迄今为止实现你有特殊问题的最简单方法如上所述,您可以创建一个自定义的课程级别验证程序,但嘿它可能比您需要的更多的工作。