如何让 Resharper 将代码转换回 foreach 循环

11

Resharper 5可以将我的foreach循环转换为Linq查询。我喜欢这样。但是,与foreach循环相比,Linq要难得多的调试。

当我将foreach语句转换为Linq查询时,我没有看到任何回退的选项。

有人知道如何做到这一点吗?是否可能?


1
听起来对于Resharper来实现这个功能是值得的。 - Jim G.
@ Jangwenyi - 如果我刚刚做了更改,我可以撤消更改。但是我说的是如果我发现一个Linq查询引发异常。我希望即使我之前将其转换为Linq查询,我的查询也可以转换回foreach。 - Vaccano
1
+1,LINQ看起来很棒,但调试起来要困难得多。我遇到了完全相同的问题,使用resharper进行转换,现在我将不得不手动转换回foreach,以便我可以知道发生了什么。吸取教训-把一切都留作foreach。 - Blingers
2个回答

6
我们正在为 ReSharper vNext 开发 LINQ2Foreach(以及其他一些)功能。

7
几年过去了,现在这个产品里有这个功能吗?更新一下这个回答可能是个好时机。 - Vimes

2
我不认为这是可能的。当然,在“快速修复示例”中没有列出循环转换为LINQ表达式的内容,详情请参见快速修复示例

您应该能够使用上下文操作“将LINQ转换为方法链”从“流畅”风格转换为“方法”风格,然后有选择地使用“引入变量”将表达式拆分。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接