我有3个相关的表
人物实体:来自地址实体(地址和地址1)的两个外键和来自所有者表的一个外键
地址实体从Owners表中有一个外键
人员视图包含来自地址实体的字段以及跟踪并发检查
var entry = ex.Entries.Single();
var databaseValues = (Person)entry.GetDatabaseValues().ToObject();
var clientValues = (Person)entry.Entity;
适用于Person字段。
然而,当我尝试访问
时databasevalues.Address.City或databasevalues.Address1.City它给出了一个空异常。我认为这是由于地址实体未在开头加载
征求意见
答案 0 :(得分:0)
您可以尝试在查询中明确加载相关实体:
IQueryable<Person> persons = DataContext.Persons.Where(p => p.City == "Hoboken").Include("Address")
将显式加载返回的人员实例的相关地址条目。
另一个选项是禁用edmx文件中的延迟加载选项;打开文件,然后打开属性面板,设置Lazy Loading = false。