db.Entity.Add(entity);
db.SaveChanges();
ToModel(entity); // Error!
ToModel是查询和新增时通用的将实体映射成ViewModel的方法,方法里面会调用导航属性,
试过Entry.Reload,还有重新Find出来,都不能填充导航属性,要怎么解决?
对于导航属性应先做查询,确保外键有效性,而不是直接设置外键就不管他了.
如果先查询的导航属性对应的实体,那么新增的实体就是会包含导函属性的.
保存之后重新查一下,不能直接用,直接用的是没有追踪数据上下文的
你添加过后需要重新查询,
使用Include方法将导航属性包含进去。