当我在从lambda表达式调用的方法中放置断点时,断点永远不会被命中。当我在lambda之外移动方法调用时,会触发断点。在lambda中调用方法时未触发断点
例如:
Function IncrementAll(ByVal items As IEnumerable(Of Integer)) As IEnumerable(Of Integer)
Return items.Select(Function(i) Increment(i))
End Function
Function Increment(ByVal i As Integer) As Integer
Return i + 1 'Breakpoint here
End Function
如果我打电话IncrementAll,在增量断点没有被击中。有没有办法让VS 2008在这些断点上停下来?我讨厌将所有LINQ重写为仅用于调试的循环。
有趣的是,我知道我已经在.NET 4中完成了这项工作。您已经验证过“项目”中有元素,并且您正在调试配置中运行(即,断点将在项目的其他地方)? –
是的,如果我在项目上放置一个断点。选择上面它会击中,如果我转换项目。选择一个循环,然后Increment中的断点将命中。 – Misko