2

アイテムを保存して検証するためのデータプロバイダーとして EF を使用しています。他のサービスまたはアイテムへのアクセスを必要とするカスタム検証ロジックがいくつかあります。ValidationContext クラスがこれらのオプションを提供していることは知っています。私の質問は、サービス プロバイダーまたはアイテムを使用して独自の検証コンテキストを EF に取得するにはどうすればよいですか?

POCO エンティティに IValidateObject インターフェイスを実装すると、検証コンテキストのインスタンスが取得されますが、EF の既定の ValidationContext ではなく、独自の ValidationContext が使用されていることを確認するにはどうすればよいでしょうか?

サービスまたはアイテムが ValidationContext で利用可能であるという事実に基づいて、いくつかの検証を行いたい

4

1 に答える 1

2

ValidationContext を渡すには、DbContext.ValidateEntity() をオーバーライドする必要があります。このメソッドは、エンティティ エントリと項目の 2 つのパラメータを取ります。アイテム ディクショナリで検証コンテキストを渡します。このstackoverflowの質問を見てください。

于 2012-10-16T17:49:53.967 に答える