【发布时间】:2015-08-27 16:50:09
【问题描述】:
我在 MVC 4/EF 6 中设置了以下(简化的)数据库。每个类在其模型中使用标准 public virtual ICollection<SalesOrder> SalesOrders { get; set; }(反之亦然)引用另一个。我是 EF 和 C# 以及诸如此类(但不是 SQL)的新手,所以这可能很简单,但我不确定如何做到这一点:我需要编写一个函数来返回每个 SalesOrder.ExternalId 的列表与给定的OrderChangeNotice.Id 关联。这没有任何过滤,所以我知道这是错误的,但这是我一直在尝试的查询的一个想法:
ocnRepository.SelectMany(n => n.SalesOrders.Select(o => o.ExternalId)).ToList();
如何正确编写此查询?
简化的数据库架构:
如果有帮助,这里是表映射代码(在OrderChangeNotice 的映射文件中,SalesOrder 的映射中不存在类似代码,因为它只需要一个)。
this.HasMany(o => o.SalesOrders)
.WithMany(o => o.OrderChangeNotices)
.Map(m =>
{
m.ToTable("OCN_SalesOrders");
m.MapLeftKey("OrderChangeNoticeId");
m.MapRightKey("SalesOrderId");
});
【问题讨论】:
标签: c# asp.net-mvc linq entity-framework