【发布时间】:2012-06-29 16:32:47
【问题描述】:
如果我缓存整个表:
static List<Table1> table1Cache = context.Table1.ToList();
然后我用它来关联:
var context = new Context();
var t2 = new Table2();
t2.MyTable1Reference = table1Cache.Single(x=>x.Id == paramIntId);
context.SaveChanges();
由于第三行,将向 Table1 插入新行。 EF 认为这是一个新实体。我知道我可以做一些事情,比如在创建上下文时总是附加缓存(每个请求我有 1 个上下文),或者使用 MyTable1ReferenceID = table1Cache.Single(x=>x.Id == paramIntId).Id;
但它不安全,我有时会忘记,有一个好的解决方案吗?
【问题讨论】:
标签: c# asp.net entity-framework entity-framework-4