可以实体框架自动更新属性导航的Id

本文关键字:属性 导航 Id 更新 实体 框架 | 更新日期: 2023-09-27 18:12:35

在实体框架中,当我通过设计器将我的表映射到相应的实体并实际使用它们时,我会发现一个实体- Thing,它与另一个对象(例如,Bob)有关系(多对一,或一对一),将在Thing上产生以下三个属性:

Bob
BobId
BobReference

如果我设置BobId,并保存我的实体,下次我获取这个Thing时,我将能够轻松地导航Bob属性。但是,我很好奇,是否有可能配置EF以允许我在不立即保存的情况下导航属性。

可以实体框架自动更新属性导航的Id

您可以这样做:(EF 4.1)

//Has to exists a record on Bob table with Id = 1
var thing = new Thing() { BobId = 1 };
var context = new YouContext();
context.Entry(thing ).State = EntityState.Unchanged;
context.Entry(thing ).Reference(x => x.Bob).Load();

,然后是东西。