【发布时间】:2014-04-28 12:51:21
【问题描述】:
在一个项目中工作时,我看到一个奇怪的行为,我无法理解加载导航属性。
这是一个重现这个“问题”的小例子。
我想加载年份,不包括公司的数据(导航属性)。
我的代码:
public static Year GetYear(int id)
{
using (var context = new testModelContainer())
{
var result = context.YearSet.FirstOrDefault(c => c.Id == id);
//Company test = context.CompanySet.Where(c => c.Id == id).FirstOrDefault();
return result;
}
}
这将返回我想要的年份,导航属性中没有数据,但是如果我取消注释该行并执行该行,可能是因为我想知道公司名称或其他什么,它会自动包含公司数据进入年度公司导航属性。
知道如何防止这种行为吗?出于安全原因,我想避免发送“父母”的数据。
我正在使用 EF 6、.NET 4.5。
【问题讨论】:
标签: c# entity-framework navigation-properties entity-model