我在其上面安装了带有EF 5的Oracle数据库。
假设我有表公司和订单。我有EF对应的实体,其中公司有字段
List<Orders> Orders
。
我不想创建关联。
我有一个IQuerable查询,我需要使用
填写每家公司的订单 order.CompanyId == company.Id
我无法绕过这个大概..任何帮助都将不胜感激。
编辑:并非每家公司都有订单。订单列表可能为空。
答案 0 :(得分:0)
我会考虑使用.Join()方法来包含Orders表。我是从内存中写的,所以请原谅语法错误。
//I only use this bc I don't know the full schema.
class DTOCompany {
public int ID {get;set;}
public List<Orders> Orders {get;set;}
}
public List<Companies> GetCompaniesOrders() {
using (var db = new Entities()) {
return db.Companies
.AsEnumerable() //may not be needed.
.Join(db.Orders,
c => CompanyId,
o => o.CompanyId,
(c,o) => new { Company = c, Orders = o})
)
.Select(co => new DTOCompany() {
ID = co.Companies.CompanyId,
Orders = co.Orders.ToList()
})
.ToList();
}
}