如何在类模板中使用文件范围的命名空间声明?

Nig*_*gel 17 c# templates visual-studio visual-studio-2022

C# 10 引入了文件范围的命名空间,我想在 Visual Studio 的类模板中使用它。我已将“类”模板文件更新为以下内容:

namespace $rootnamespace$;
class $safeitemrootname$
{
    //I put this comment here to make sure it's using the right file
}
Run Code Online (Sandbox Code Playgroud)

但是当我创建一个新的空类时,我得到了这个自动生成的代码:

namespace ProjectName
{
    internal class Class1
    {
        //I put this comment here to make sure it's using the right file
    }
}
Run Code Online (Sandbox Code Playgroud)

我需要做什么才能使空类的自动生成代码看起来像这样?

namespace ProjectName;  
internal class Class1
{

}
Run Code Online (Sandbox Code Playgroud)

作为参考,我使用的是 Visual Studio 2022 Professional,我的项目使用的是 C#10 和 .NET 6。

我正在修改的类模板文件的位置是:C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class\Class.cs

Nig*_*gel 25

您必须将项目的编辑器配置设置为首选文件范围的命名空间。

\n
    \n
  1. 右键单击您的项目。选择“添加”\xe2\x86\x92“新项目”

    \n
  2. \n
  3. 选择“编辑器配置文件(.NET)”

    \n
  4. \n
  5. 双击新的 editorconfig 文件。在“代码样式”选项卡中,将“命名空间声明”设置为“文件范围”

    \n
  6. \n
\n

在此输入图像描述

\n

代码模板现在将按预期工作。

\n

  • 您不仅可以将“.editorconfig”文件添加到项目中,还可以将其添加到解决方案中并使其适用于该解决方案中的所有项目。 (2认同)