2011-07-10 15 views
0

OK属性動的カスタムは、Entity Frameworkので

これはおそらく、簡単ではありませんが、私はそこにそれを投げると考えました:

私は部分的にEFでモデル初のエンティティを拡張するアイデアを得ます私はエンドクライアントに渡されたときに実際に必要とされるフィールドをカスタマイズしたい場合があり、マルチテナントシステムにしていた場合

[Required] 
string MyString {get;set;} 

は、しかし、私は動的に設定することができます。このようなデータ注釈要素の気にいらを追加するためのクラスクライアントの仕方に応じたアノテーションたとえば、別のテーブルに設定を構成していますか?

更新:マルチテナントシステムでは、少なくとも2つのデータベースがあります。システム構成情報を格納するもの。さらに、各顧客には独自のデータベースがあります。システムDBは、適切な顧客データベースのルーティングおよび選択を制御する。

これを達成する方法について誰でも洞察力やアイデアがあれば素晴らしいと思います!

おかげで、 ブレント

答えて

1

EF 4.1を使用している場合は、同じエンティティを参照しながら異なるDbContextを作成できますが、Fluent APIを使用して異なるマッピングを提供することができます。

ここには、APIを使用した動画へのリンクがあります。 Fluent Api

注:すべての異なる構成に対応するには、データベースをセットアップする必要があります。たとえば、あるコンテキストでは「FirstName」が必要で、別のコンテキストではそうでない場合、dbは両方の状況に対処するためにNULLを許可する必要があります。

+0

私はあなたが正しい方向に私を指摘したと思います。私が見ている2つのリンクが見つかりました:http://www.nikhilk.net/RIA-Services-Fluent-Metadata-API.aspxとhttp://fluentmetadata.codeplex.com/私は一度それに飛び込むと、私はより多く投稿します。 –

+0

偉大な、私はそれが助けて願っています。 –

+0

私は正しい方向に向かっています。私はジュリー・レーマンとニヒル・コタリに手を差し伸べ、その一例をまとめました。 MSFTはそれを使用することは決してありませんでした。私が何かを自分で構築しない限り、このようなものを使用するための私の探求が美しいものです。 –

0

あなたは動的属性を変更することはできません。

1つの選択肢は、実際に作業するいくつかのクラス(またはインターフェイスの実装)を継承した型を動的に作成することです。私はこれがEFで動作するかどうかはわかりませんが。

もう1つの可能性は、EFに同じことを伝える別の方法がある場合ですが、EFはそれほど分かりません。そのようなものがあるかどうかはわかりません。

関連する問題