我在使用 linq 查询时遇到了一些问题
var matches = from po in purchaseOrders
from poItem in po.Items
where TestMatch(poItem)
select new Item(poItem);
purchaseOrders 是一个 List 每个 PurchaseOrder 都包含一个 List
我需要的结果是每个采购订单中匹配的第一个 poItem(基于 的结果TestMatch(poItem)
),或者是一个空白的 Item 对象。
所以最后matches.Count == purchaseOrders.Count
目前,我只得到与 PO 匹配的项目,我不确定如何确保每个 PO 只得到一个项目。而且我不知道如何确保如果没有匹配项,我会得到那个 PO 的空白项目。