且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何在项目目标.Net6中看到用VS2022从Razor组件编译而来的C#代码?

更新时间:2023-02-16 13:49:05

感谢Maggo先生指出这篇文章。让我发布完整答案。

要保留生成的*_razor.g.cs文件,请在项目文件中设置EmitCompilerGeneratedFiles属性。但在这种情况下,您将无法通过双击输出或错误列表窗口中的错误看到生成的代码,因为文件将保存到

objDebuggeneratedMicrosoft.NET.Sdk.Razor.SourceGeneratorsMicrosoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator

Forlder.但错误将指向

Microsoft.NET.Sdk.Razor.SourceGeneratorsMicrosoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator

文件夹。因此,您需要通过设置CompilerGeneratedFilesOutputPath属性指定文件应保留在此文件夹中。

因此,简而言之就是将其添加到项目部分的项目文件中:

  <PropertyGroup>
    <EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
    <CompilerGeneratedFilesOutputPath>.</CompilerGeneratedFilesOutputPath>
  </PropertyGroup>