と呼ばれるクラスがあり、EntityModel
で定義されているように、同じ列を持つ3つの異なるテーブルを作成したいとしますEntityModel
。tbPast
テーブルを、、tbPresent
と呼びましょうtbFuture
。エンティティ内で個別にアクセスしたいDbContext
:
using (var db = new MyContext())
{
var element = db.Past.Find(id);
db.Past.Remove(element);
db.Present.Add(element);
db.SaveChanges();
}
3つのテーブルを持つ主な目的はパフォーマンスです。テーブルには数百万の行があり、最も重要なのはPresent
数十の行があるです。ほとんどのクエリはPresent
テーブルで行われます。
これを行うための最良の方法は何ですか?同じプロパティで3つのモデルを実装することは、私には適切ではないようです。
私は、ASP.NET MVC 3とともに、CodeFirstアプローチでEntityFrameworkを使用しています。