【发布时间】:2012-12-10 22:06:05
【问题描述】:
在 linq 中尝试解决这个问题的实体是新的。我有以下表格:
Customer: Cust_Id, Name
Orders: Order_Id
CustomerOrders: Cust_Id, Order_Id
我有这样的课:
public class Customers
{
public List<Row> Rows { get; set; }
public Customers()
{
Rows = new List<Row>();
}
public class Row
{
public int Key { get; set; }
public string Name { get; set; }
public List<string> Order_Ids { get; set; }
}
}
Linq 查询是这样的:
var query = from c in context.Customer
select new Customers.Row
{
Key = c.Cust_Id,
Name = c.Name,
Order_IDs = List<string>( ?? )
};
foreach (var row in query)
{
Customers.Rows.Add(row);
}
var serializer = new JavaScriptSerializer();
return serializer.Serialize(Customers);
我在哪里有'??',我可以使用子查询或其他东西从CustomerOrders 表中获取Order_Id 的列表吗?
现在,我只能考虑在填满Customers 表后循环它,然后再次查询数据库以获取每个客户的Order Id 的每个数组。
【问题讨论】:
-
Customer.Rows.AddRange(--your LINQ query here --)将是一个更短的实现
标签: c# asp.net linq linq-to-entities