我有以下代码。如何将其转换为 LINQ?任何人都请帮助我。
在下面的代码中,“powd”包含数据库值,purchaseOrderUpdateRequest 包含用户提交的数据。
bool hasUpdate;
foreach (var item in purchaseOrderUpdateRequest.Lines)
{
var line = powd.PurchaseOrderLines.Single(p => p.ItemNumber == item.ItemNumber);
decimal quantityToReceive = item.QuantityReceived - line.QuantityReceivedToDate;
if (quantityToReceive > 0)
{
hasUpdate =true;
break;
}
}
谢谢。
最佳答案
所以您要解决的问题是是否有任何项目有更新?那只是:
var hasUpdate = purchaseOrder.UpdateRequest.Lines.Any(item =>
item.QuantityReceived < powd.PuchaseOrderLines
.Single(p => p.ItemNumber == item.ItemNumber)
.QuantityReceivedToDate)
我已经将比较更改为直接使用 <
而不是减法和与 0 的比较,但这应该没问题。
关于c# - 使用 LINQ 而不是使用 for-each 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6000455/