nhibernate バリデーターをアプリケーションに統合していますが、すべてが属性で問題ありませんが、 *.nhv.xml ファイルを作成して検証ルールをそこに移動するとすぐに (埋め込みリソースとして)
ValidatorEngine.Validate(entity)
間違ったものを返します(実際には何もなく、私のInvalidValue[]
コレクションは空です
私はコメント/アドバイスを適切にします
nhibernate バリデーターをアプリケーションに統合していますが、すべてが属性で問題ありませんが、 *.nhv.xml ファイルを作成して検証ルールをそこに移動するとすぐに (埋め込みリソースとして)
ValidatorEngine.Validate(entity)
間違ったものを返します(実際には何もなく、私のInvalidValue[]
コレクションは空です
私はコメント/アドバイスを適切にします
問題は、最初にnhibernate バリデーターの構成部分が原因でした。
NHibernateSharedEngineProvider
配属されるべき
NHibernate.Validator.Cfg.Environment.SharedEngineProvider
次に、現在のエンジンのConfigure
の新しいインスタンスではValidatorEngine
var provider = new NHibernateSharedEngineProvider();
NHibernate.Validator.Cfg.Environment.SharedEngineProvider = provider;
var nhvConfiguration = new FluentConfiguration();
nhvConfiguration
.SetDefaultValidatorMode(ValidatorMode.UseExternal)
.Register(Assembly.Load("assembley name")
.ValidationDefinitions())
.IntegrateWithNHibernate
.ApplyingDDLConstraints()
.And
.RegisteringListeners();
var validatorEngine = NHibernate.Validator.Cfg.Environment.SharedEngineProvider.GetEngine();
validatorEngine.Configure(nhvConfiguration);