我正在尝试使用现有的表结构来实现EF,我不允许其更改以保留数据。
我有TableA
列,如下所示:
EntityCode
EntityName
...
EntityCode
是名为Entities
的表的主键,其列如下:
EntityCode
EntityName
内存中的数据仅包含EntityCode
记录的TableA
。我需要在插入记录时填充TableA
。EntityName
。
持久性的当前代码只是先查找(SELECT EntityName FROM Entities WHERE EntityCode='blah
)。
我如何(可以)在EF 4.1中模仿这种行为?
答案 0 :(得分:0)
这样的事情可行:
TableAObject tableA = new TableAObject() { EntityCode = "123" };
//...
using (var context = new MyDbContext())
{
tableA.EntityName = context.Entities
.Where(e => e.EntityCode == tableA.EntityCode)
.Select(e => e.EntityName)
.SingleOrDefault();
context.TableAObjects.Add(tableA);
context.SaveChanges();
}