防止Visual Studio编辑器重新格式化 #if..#endif



假设我在 C# 中有以下代码:

void Func () {
    int i=3;
    #if DEBUG
    ...
    #endif
    for (int j=0;j<i;j++) {
        ...
    }
}

如果我使用 Edit->Advanced->Format document ,它会重新格式化为这样(使用我当前的代码格式设置(:

void Func ()
{
    int i = 3;
#if DEBUG
    ...
#endif
    for ( int j = 0; j < i; j++ )
    {
        ...
    }
}

有没有办法防止#if线和#endif线被移到最左边?我找不到这些设置的任何设置,但我希望有一个注册表设置来控制它的工作原理。

任何建议将不胜感激 - 这种行为让我发疯,因为我的代码有数百个这样的块,它们不断被 VS 破坏。

我一直在使用的一种样式是像这样向 # 标签添加空格

void Func ()
{
    int i = 3;
#   if DEBUG
    ...
#   endif
    for ( int j = 0; j < i; j++ )
    {
        ...
    }
}

..if 块看起来与代码正确对齐,重新格式化代码不会移动预处理器标记。

最新更新