Lambda表达式缩进不正确

时间:2014-12-09 00:33:57

标签: c# visual-studio-2013 lambda indentation

我在Visual Studio 2013中已经有这个问题了一段时间。它似乎并不理解如何在错误排列的情况下将缩进规则正确应用于lambda表达式。这是一个简化的例子:

var s = new Action(() =>
   {
   });

在第二行和第三行中,缩进只有3个空格而不是4个(真正的代码示例更多,更大,内部表达式跨越数百行 - 这是由我的同事检查的,我正在尝试要解决这个问题)。我已经尝试了重新格式化代码,文档,重新创建大括号等的每种组合。似乎没有什么工作。它拒绝自动更新缩进。

我通常不打扰它,但它导致内部的所有代码也被1个字符关闭。当我在中间键入线条时,标签/移位+标签标记与上方和下方的线条相差1个字符,我不得不进行调整以重新排列。我可以找到最接近这个问题的是2013年Connect Feedback这个被认为是固定的,但是我正在更新4(2014年11月发布)并且仍然遇到问题。

如果没有手动浏览并更新lambda表达式中每一行的缩进,是否有人知道如何快速修复此代码?

1 个答案:

答案 0 :(得分:4)

明确忽略Visual Studio中的问题,并立即提供问题的解决方案。按住 alt 以启用块选择,选择所有行,然后键入单个空格。只是为了说明:

Block Selection

如果您输入Hello World!,结果将是:

After Typing

作为一个咆哮':一个lambda不应该包含数百行代码,这是一个非常大的nono可维护性。