首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在以c#为目标的项目中使用VS2022从Razor组件编译.Net6代码?

如何在以c#为目标的项目中使用VS2022从Razor组件编译.Net6代码?
EN

Stack Overflow用户
提问于 2022-02-02 15:47:15
回答 2查看 1.4K关注 0票数 5

我有一个组件,我希望看到由RazorSourceGenerator *_razor.g.cs文件生成。

以前,使用VS2019和.Net5,我可以打开VS2019文件夹并在那里找到生成的文件。

现在,如果我在"\Microsoft.NET.Sdk.Razor.SourceGenerators\Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator"组件中出现了一些压缩错误,我可以看到一条引用*.razor文件夹的错误消息,但是没有这样的文件夹。它似乎是删除后,项目已经建立。

是否有方法保留此文件夹以查看*.razor文件压缩结果?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-02-03 08:45:54

谢谢马格先生指点这篇文章。让我贴出完整的答案。

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

代码语言:javascript
复制
obj\Debug\generated\Microsoft.NET.Sdk.Razor.SourceGenerators\Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator

福尔德。但该错误将引用

代码语言:javascript
复制
Microsoft.NET.Sdk.Razor.SourceGenerators\Microsoft.NET.Sdk.Razor.SourceGenerators.RazorSourceGenerator\

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

因此,简短的是将其添加到项目部分的项目文件中:

代码语言:javascript
复制
  <PropertyGroup>
    <EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
    <CompilerGeneratedFilesOutputPath>.</CompilerGeneratedFilesOutputPath>
  </PropertyGroup>
票数 8
EN

Stack Overflow用户

发布于 2022-02-03 01:12:16

您可以在csproj中将属性EmitCompilerGeneratedFiles设置为true。

这是一个写得好,它是如何工作的,以及文件在哪里编写的选项。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70958616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档