2010-02-02 83 views
1

我遇到Microsoft EnterpriseLibrary验证框架问题。MS企业库验证问题

假设我们有一个DateTime?领域。当与另一个验证器(假设,日期时间验证器)一起使用NotNullValidator时,我总是运行一个异常。

该方案是:我传递一个空值。 NotNullValidator工作正常(它设置了验证问题),但是另一个验证器抛出一个NullReferenceException,尝试将其规则应用于我传递的空值。

我试着用AND逻辑放置一个CompositeValidator,希望如果第一个验证器报告了一个问题,下面的验证器将被忽略(因为它应该与AND逻辑),但我没有运气。

如何使NotNullValidator与其他验证器共存,让第一个优先(明显)优先于其他验证器?

回答

1

以上目前不可能。不幸的是,复合验证器不会短路。

如果你需要这样做,我只会写一个自定义验证器,快速和相对无痛。