この議論から、組み込みの検証の後に NHibernate Validator が実行されることがわかります。つまり、NHibernate Validator が実行される前に、Not Null 属性が PropertyValueException をスローします。
NH の組み込みバリデーターの前に NHV を実行する方法はありますか?
バニラ NHV のように、すべてのダーティ エンティティを検証できるようにしたいと考えています。
この議論から、組み込みの検証の後に NHibernate Validator が実行されることがわかります。つまり、NHibernate Validator が実行される前に、Not Null 属性が PropertyValueException をスローします。
NH の組み込みバリデーターの前に NHV を実行する方法はありますか?
バニラ NHV のように、すべてのダーティ エンティティを検証できるようにしたいと考えています。
nhibernate の外部でエンティティを自分で検証できます。次に例を示します。
ValidatorEngine validatorEngine = new ValidatorEngine();
var nhvConfiguration = new FluentConfiguration();
nhvConfiguration.SetDefaultValidatorMode(ValidatorMode.UseExternal)
.Register(Assembly.Load("Namespace_Where_Validations_Are_Located")
.ValidationDefinitions())
.IntegrateWithNHibernate
.AvoidingDDLConstraints()
.And
.AvoidingListenersRegister();
validatorEngine.Configure(nhvConfiguration);
InvalidValue[] invalidValues = validatorEngine.Validate(entityToValidate);