2011-09-12 7 views
2

IOCコンテナでC#DataAnnotationsを使用することはできますか?私はクラスがインスタンス化された後、解決されたオブジェクトを属性クラスに注入したいValidationAttributeを得ました。基本的には、インスタンス化されたクラスからアノテーションにアクセスしたいと思います。あるいは、私はこのバックワードについて考えており、validationContext.ObjectInstanceを使うべきでしょうか?IOCコンテナでC#DataAnnotationsを使用することはできますか?

+0

多分私はあなたが属性クラスに解決されたオブジェクトを注入しようとしているのが分かりませんでしたか?あなたの依存関係のように属性ですか? – TheCodeKing

+0

TheCodeKing - 確かに、検証属性内からメソッドを呼び出す必要があり、属性クラスでデータ接続をハードワイヤリングする代わりに、プロバイダに渡したいと思います。 –

+0

それは私が思ったものです。その場合、私の答えは私がこれが可能であると信じる唯一の方法です(ダウン有権者が別のものを知っていなければ) – TheCodeKing

答えて

0

これを(DI付きで)使い方はまったくありません。ただし、現在のIoCコンテナにアクセスする静的メソッドを作成する場合は、IoCを使用できます。かなり厄介ですが、私が見つけた唯一の解決策です。

静的とは、アプリケーションまたは要求キャッシュから取得した静的アクセサを意味します。

+0

緩和には良いことです。あなたの好きなIoCパターンでアプリケーションを書くことができます。また、DataAnnototationsのResourceProviderインスタンス(他のすべてに組み込まれたプロパティ)を使用する必要があるときは、他のすべてを再設計することなく、何らかの形で行うことができます。 – SoonDead

関連する問題