在Entity Framework中,当我通过设计器将我的表映射到相应的实体并实际使用它们时,我会发现一个实体 - Thing
,它有一个关系(多对一,或者一对一)与另一个对象,例如Bob
,会在Thing
上生成以下三个属性:
Bob
BobId
BobReference
我是否要设置BobId
并保存我的实体,下次我获取此Thing
时,我将能够毫无困难地导航Bob
属性。但是,如果可以配置EF以允许我导航属性而不必立即保存,我很好奇。
答案 0 :(得分:1)
您可以这样做:(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();
然后是thing.Bob是!= null