【发布时间】:2010-05-18 16:35:04
【问题描述】:
我在 microsoft 网站上查看了一些关于 linq 的示例,我看到了一个需要修改的示例!
http://msdn.microsoft.com/en-us/vcsharp/aa336758.aspx#SelectManyCompoundfrom3
public void Linq16()
{
List<Customer> customers = GetCustomerList();
var orders =
from c in customers
from o in c.Orders
where o.OrderDate >= new DateTime(1998, 1, 1)
select new { c.CustomerID, o.OrderID, o.OrderDate };
ObjectDumper.Write(orders);
}
选择检索 CustomerID、OrderID 和 OrderDate 我想选择 CustomerID 和包含该用户所有订单的 System.Collection.Generic.List<int>!本质上,我想按 CustomerID 对订单进行分组,但我注意到 linq to entity 不允许在选择中使用 .ToList(object)。
我想要这样的东西......
List<Customer> customers = GetCustomerList();
var orders =
from c in customers
from o in c.Orders
where o.OrderDate >= new DateTime(1998, 1, 1)
select new xpto
{
TheCostumerID = c.CustomerID,
CostumerOrders = o.Select(i=>i.OrderID).ToList(),
};
...但是 .ToList() 是个大问题,至少对我来说是这样。
【问题讨论】:
-
“ToList”有什么问题?
-
.ToList() 在 linq to entity 的选择中似乎不起作用!
标签: linq linq-to-entities