在ADO.NET Entity框架中保存导航属性

时间:2012-10-26 22:20:36

标签: entity-framework ado.net navigation-properties

我正在使用ADO.NET Entity Framework。我使用以下代码在数据库中添加“用户”实体:

user new_user = new user();
novus_daedalus_dbEntities dbEntity = new novus_daedalus_dbEntities();

new_user.CF = "xyz";
new_user.username = "peter";
new_user.password = "pw";

dbEntity.user.Add(new_user);
dbEntity.SaveChanges();

'user'类的CF属性是'people'类属性的外键。数据库表'people'有一个CF ='xyz'的记录。当方法'dbEntity.SaveChanges();'时执行后,“用户”数据库表中的新记录创建没有问题。问题是即使在执行'dbEntity.SaveChanges();'之后,导航属性'new_user.people'也是'null'。这是正常的吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

这是正常的,SaveChanges使用数据库生成的id填充Id属性,但不会进行查询以加载您可能不需要的导航属性,这没有任何意义。