我需要从导航属性(ICollection)加载一个相关对象以发送到我的MVC视图。
这可以节省我不必要的数据库访问和加载。
我找到this article关于加载相关对象但未弄清楚如何从列表中加载一个相关对象。
简而言之,我需要对象及其导航属性中的一个相关对象。
如何实现这个目标?
答案 0 :(得分:2)
您不能使用Include执行此操作。 Include将带回导航属性的所有相关实体。您可以编写两个单独的查询,也可以在查询中编写连接。
写两个查询:
var princess = context.Princesses.Find(id);
var unicorns = context.Unicorns.Where(u => u.PrincessId == id && u.UnicornName == "Blinky");
princess.Unicorns = unicorns.ToList();