我在MVC 4 / EF 6中设置了以下(简化)数据库。每个类在其模型中使用标准public virtual ICollection<SalesOrder> SalesOrders { get; set; }
(反之亦然)引用另一个。我是EF和C#以及诸如此类(但不是SQL)的新手,所以这可能非常简单,但我不确定如何做到这一点:我需要编写一个函数来返回每个{{1与给定的SalesOrder.ExternalId
相关联。这没有任何过滤,所以我知道这是错的,但这里是我一直在尝试的查询的想法:
OrderChangeNotice.Id
如何正确编写此查询?
简化数据库架构:
如果有帮助,这里是表映射代码(在ocnRepository.SelectMany(n => n.SalesOrders.Select(o => o.ExternalId)).ToList();
的映射文件中,OrderChangeNotice
的映射中不存在类似的代码,因为它只需要一个代码。
SalesOrder
答案 0 :(得分:0)
我更习惯NHibernate,但我认为它应该是这样的:
ocnRepository.SelectMany(n => n.SalesOrders)
.Where(so => so.OrderChangeNoticeId == myOrderChangeNoticeId)
.Select(o => o.ExternalId)
.ToList();