私はクラスを持っています。それはEntityModel
と呼ばれ、EntityModel
で定義されているように同じ列を持つ3つの異なるテーブルを作成したいとします。テーブルtbPast
、tbPresent
、tbFuture
を呼び出してみましょう。複数のテーブルの同じモデル
using (var db = new MyContext())
{
var element = db.Past.Find(id);
db.Past.Remove(element);
db.Present.Add(element);
db.SaveChanges();
}
3つのテーブルを持つことの主な目的はパフォーマンスです:私はまた、エンティティDbContext
でseparetelyそれらにアクセスするテーブルが数百万行を持つことになり、そして最も重要なのは、行の数十で、Present
です。ほとんどのクエリはPresent
テーブルで行われます。
これを行うにはどのような方法が最適ですか?同じプロパティを持つ3つのモデルを実装することは、私にとっては正しいとは思えません。
私はあなたがEFコード・ファースト/ wの別々のテーブルを生成するために、同じモデルを使用することはできませんASP.NET MVCと一緒に3
EF worldでは、同じエンティティタイプを異なるテーブルにマップすることはできません。多くの理由から。あなたの目的のために、@ Teoman Soygulの答えを使用します。 –