将 .cshtml 文件转换为 C# .cs文件

本文关键字:文件 cs 转换 cshtml | 更新日期: 2023-09-27 18:31:30

我需要使用 Roslyn 对 Web 应用程序的源代码(包括其视图)运行一些分析。

由于它只能解析 C# 文件,而不能解析 razor 视图,因此我计划将视图转换为未编译的.cs文件,然后让 Roslyn 解析该文件。

我该怎么做?

将 .cshtml 文件转换为 C# .cs文件

我认为扩展包剃刀生成器就是您正在寻找的。

从 Razor 文件(.cshtml 文件)生成源代码,允许将它们编译到程序集中。支持 MVC、网页和独立模板。

我在剃刀生成器库的帮助下从 Razor .cshtml 文件生成.cs文件。

生成的cs文件包含来自.cshtml源文件的行信息。因此,如果针对.cs文件运行 Roslyn 分析器,则可以将源行从.cs文件映射回原始.cshtml文件。