自最近升级以来新生成的 GeneratedMSBuildEditorConfig 文件

cee*_*eej 13 roslyn editorconfig

我一直在升级一个项目,自从安装了最新版本的 Visual Studio 2019 后发现以下文件正在输出到磁盘

MyProjectName.GeneratedMSBuildEditorConfig.editorconfig

我认为这与 roslyn 编译器有关,并在此提交中引入:https : //github.com/dotnet/roslyn/commit/de348c5a77977459a4138de0a62487e00980e28a#diff-e87b4990385fcfea44bb8ad2f3

关于这个文件是什么、它做什么以及它是否应该在源代码控制中或被排除,已经出现了明显的问题。我知道 .editorconfig 文件是干什么用的,但这个文件出乎意料。我的搜索一无所获。任何人都可以对此有所了解吗?

Chr*_*icz 18

更新:这已在 Visual Studio 16.9 及更高版本中修复。


使用旧版/非 SDK 样式的项目时存在一个错误,导致这些文件输出到错误的位置。我们在这里有一个修复:https : //github.com/dotnet/roslyn/pull/48781

作为临时解决方法,您可以通过将以下内容添加到项目文件中来显式设置生成的文件输出路径

<PropertyGroup>
    <GeneratedMSBuildEditorConfigFile>$(IntermediateOutputPath)\$(MSBuildProjectName).GeneratedMSBuildEditorConfig.editorconfig</GeneratedMSBuildEditorConfigFile>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

  • 似乎在 VS 2019 16.9 或刚刚发布的 .NET SDK 5.0.2 中已修复。我已经删除了额外的设置,并且没有再次看到在项目根目录上生成的文件。 (3认同)
  • 您可以通过将解决方法放入 Directory.Build.targets 文件(不是 .props,因为 $IntermediateOutputPath 在加载 .props 文件的阶段尚不可用)来为许多项目部署一次解决方法 (2认同)