0
foreach (var distinctPart in distinctParts)
{
    var list = partlist.Where(part =>
    {
        if (part.PartNumber.Equals(distinctPart))
            return true;
        return false;
    }).Select(part =>
    {
        return part.Number;
    }).Distinct();
    int quantity = list.Count();
    hwList[distinctPart] = quantity;
}

当我调试并打开hwList字典时,我收到错误消息:

函数评估已禁用,因为之前的函数评估超时。您必须继续执行才能重新启用函数评估。

4

1 回答 1

0

为什么这么复杂?

也许您已经可以通过简化此代码来解决问题,如下所示:

foreach (var distinctPart in distinctParts)
{
    var count = partlist.Where(part => part.PartNumber.Equals(distinctPart))                
                       .Select(part => part.Number)
                       .Distinct().Count();
    hwList[distinctPart] = count;
}

顺便说一句,您是否有一个名为PartNumberand another的属性Number,两者都定义在 a 上Part

于 2013-10-25T09:25:37.583 回答