【问题标题】:Function evaluation timed out when dictionary is opened at debug time在调试时打开字典时函数评估超时
【发布时间】:2019-01-09 10:35:00
【问题描述】:
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 字典时,我收到错误消息:

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

【问题讨论】:

标签: c# linq


【解决方案1】:

为什么这么复杂?

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

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

顺便说一句,您是否有一个名为PartNumber 和另一个Number 的属性都定义在Part 上?

【讨论】:

    猜你喜欢
    • 2018-07-31
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 2010-11-11
    • 2014-04-06
    • 2011-06-17
    • 1970-01-01
    相关资源
    最近更新 更多