0

レポートに存在する製品、クライアントなどの複数のエンティティ タイプを実装する必要があります。これらのエンティティの属性はすべて文字列にすることができます。これらの「エンティティ」はかなりの数存在する可能性があるため、それぞれに対して多くのテーブルを作成したくありませんでした。代わりに、タイプの複数の C1... C30 列を持つ 1 つの汎用「クラス」テーブルを作成しましvarchar(max)た。

次に、 などのエンティティごとにビューを作成しますvwProduct。次に、これらのビューをエンティティ (つまりProduct) として Entity Framework にマップし、データ注釈などのすべての EF の利点を活用します。私は、EF モデルを 1 か所で管理できる優れた EF デザイナー ツールを使用しています。

ただし、一部のエンティティには 5 つの属性しかない場合があるため、多くの Cn 列が null のままになります。これは問題ですか?SQL Server 2008 R2 はこの種のものに最適化されているため、そうではないと思います。おそらく、より良いデータ型を使用する必要があります。

ビューを介してすべてに対して1つの物理テーブルがクエリ/更新されるため、パフォーマンスがどのように影響を受けるかもわかりません。しかし、これもエンタープライズ DBMS の存在理由です。

一般的な物理テーブル、DB ビュー、および EF (POCO クラス) の組み合わせは、特に MVC フレームワーク内で強力に思えます。

考え?

どうもありがとう。

4

0 に答える 0