如何在C#中自动插入可选花括号?

时间:2012-08-22 14:28:59

标签: c# visual-studio resharper

在C#中(如在Java中),花括号是可选的,例如if只包含单个语句的块和循环:

if (condition) DoSomething();

我正在寻找一种工具,为我的整个解决方案插入缺少的可选花括号,将上面的代码变成这样的代码:

if (condition) {
    DoSomething();
}

我知道Eclipse可以为Java做到这一点。不幸的是,我不知道可以为C#做这个的工具。我很感激你的建议!谢谢!

4 个答案:

答案 0 :(得分:3)

JetBrains Resharper为您提供了通过短按键进行此类代码重构的可能性。

答案 1 :(得分:1)

您可以编写 ReSharper替换模式 通过(在ReSharper 5.1.3 ReSharper->工具 - >模式目录 - >添加模式)中添加模式到模式目录。

然后你就像这样编写你的模式:

enter image description here

不幸的是,这对if-else不起作用。所以你需要另一种模式:

enter image description here

然后,您可以在模式目录对话框中设置模式的严重性,并可以单击立即搜索

答案 2 :(得分:0)

答案 3 :(得分:0)

使用ReSharper,转到ReSharper | Options -> Code Editing | C# | Formatting Style | Braces Layout并将Force Braces部分中的必要选项更改为Add braces。然后在Solution Explorer中找到您的解决方案,调用上下文菜单并从中选择Cleanup code...。选择Default: Reformat code,然后按Run。但要小心!它还会重新格式化解决方案中的所有代码文件。如果你是第一次这样做,请务必备份,以防你不喜欢ReSharper的默认格式。也许您需要使用格式化设置才能使其适合您。