0

在此处输入图像描述

当我尝试使用包含时,我无法访问表上下文。用户,只能访问它的字段

我的错误在哪里?谢谢。

4

2 回答 2

0

你应该使用 context.Doctor.Include(d=>d.PhoneNumbers)

这将提取所有医生,每个医生都填写了电话号码

于 2013-03-17T11:49:50.500 回答
0

使用 Load 方法意味着您可以尝试使用 Eager 加载某些需求,您可以尝试关闭延迟加载,这样所有查询都将加载相关实体,而无需使用 Include 方法。他们代理实体将为您处理实体关系之间的引用。

一旦你在你的视图中返回医生,你就会遍历它们

foreach(var doctor in Model) {   @doctor.PhoneNumber.EmergencyNumber } 

PhoneNumber 将由 EF 代理,您无需通过 Include 函数使用任何 Eager Loading。

public Context() : base("DefaultConnection")
{
    Configuration.ProxyCreationEnabled = true; // Our Navigational Properties
    Configuration.LazyLoadingEnabled = false; // No need to Include with Eager Loading
    Configuration.AutoDetectChangesEnabled = true; // Change Tracker for changes made on either side of the Association through Proxy Class
    Configuration.ValidateOnSaveEnabled = true; // Validate On Saving for Data Integrity
}
于 2013-03-17T12:38:15.963 回答