3

95% 類似したスキーマを持つさまざまなクライアント用の複数の既存の SQL Server データベースがありますが、特定の顧客のニーズを処理するために、各データベースにいくつかの追加のカスタム列がある場合があります。

たとえば、データベース A には、2 つのカスタム列を持つテーブルがあるとします。

StdColumn1, StdColumn2, CompanyACustom1, CompanyACustom2

データベース B にはカスタム列が 1 つあります。

StdColumn1, StdColumn2, AnotherCompanyCustom1

データベースCにはカスタム列がない場合があります。

StdColumn1, StdColumn2

Entity Framework を構成して、C# オブジェクトに追加の定義済みプロパティ (例: CustomColumn1CustomCustom2など) があり、それらが存在する場合はこれらのカスタム列にマップされ、カスタム列が存在しない場合は効果がありません。

ビューはこれを行う 1 つの方法ですが、CSDL、SSDL、および MSDL ファイルを使用してこのようなことを行うことができるかどうか疑問に思っていました。それとも、このテクノロジーを機能させることができるでしょうか?

4

1 に答える 1

1

Entity Framework は、事前にスキーマを認識している必要があるコンパイル時のフレームワークです。必要な動的モードはありません。しかし、裏で EF を使用し、代わりに実行時にモデルをコンパイルする Entity Framework の "拡張機能" がいくつかあります。欠点は、「動的」オブジェクトを使用して対話する必要があることです (コンパイル時に型がわからないため)。

既製の拡張機能... Entity Framework 動的データ モデル ビルダー Entity Framework ランタイム モデル アダプター

または、XML 操作を使用して SSDL および MSL ファイルを調整する独自のソリューションを展開することもできます... http://social.msdn.microsoft.com/Forums/en-US/6ed96028-0d43-4ab7-ade6-d5aaf3ffd6cf/updating -実行時のエンティティ フレームワーク

于 2014-01-13T14:22:36.263 に答える