【发布时间】:2011-03-20 08:09:18
【问题描述】:
我有一个产品集合,每个产品都有一个仓库集合,然后在仓库集合内有一个位置集合。
我需要退回所有我做得很好的产品,但我需要退回 locationWithStock,它是仓库集合内的位置集合的成员。
到目前为止我有这个但它是错误的,因为 StockDate 不是 Warehouse 的成员,而是它的集合的成员。我只需要 StockDateS 的最新(最近日期),因此我需要查看每个成员位置中有 1 个的每个 StockDate,只返回最新的。
var items = from j in products
let locationWithStock =
j.Warehouses.OrderByDescending
(a => a.StockDate).FirstOrDefault()
select new
{
Name = j.Name,
Warehouse = locationWithStock.Name
}
编辑
我会尝试再解释一下。这是层次结构:
产品。
每个产品都有多个仓库。
每个仓库都有多个位置。
我需要退回所有产品,并且每个产品都必须包含位置名称。
当有多个仓库和多个位置时,找到位置的标准是什么?
我必须搜索每个仓库,然后依次搜索每个位置,并在所有仓库中返回我使用 StockDate 检测到的最新位置(仅 1 个)。
【问题讨论】:
标签: c# linq linq-to-sql sql-order-by linq-to-objects