日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

.net core 生成html,ASP.NET Core 中如何将 .cshtml 视图文件生成为 .cs 文件

發(fā)布時間:2025/3/15 asp.net 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .net core 生成html,ASP.NET Core 中如何将 .cshtml 视图文件生成为 .cs 文件 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

用的是 ASP.NET Core 3.0

經(jīng)過折騰終于通過下面的代碼將 .cshtml 生成了 .cs ,但生成的 .cs 文件無法正常使用

class Program

{

static void Main(string[] args)

{

var dir = new DirectoryInfo("../Cnblogs.Web.ErrorPages/Views/Errors/");

foreach (var file in dir.GetFiles("*.cshtml"))

{

RazorToCSharp(file.Name);

}

}

private static void RazorToCSharp(string filename)

{

var baseType = filename == "default.cshtml" ?

"Microsoft.AspNetCore.Mvc.Razor.RazorPage" :

"Microsoft.AspNetCore.Mvc.Razor.RazorPage";

var projectFileSystem = RazorProjectFileSystem.Create("../Cnblogs.Web.ErrorPages/Views/Errors/");

var projectEngine = RazorProjectEngine.Create(RazorConfiguration.Default, projectFileSystem, builder =>

{

builder

.SetNamespace("Cnblogs.Web.ErrorPages")

.SetBaseType(baseType)

.ConfigureClass((doc, @class) =>

{

@class.ClassName = "Error" + Path.GetFileNameWithoutExtension(filename);

});

});

RazorProjectItem projectItem = projectFileSystem.GetItem(filename, null);

RazorCodeDocument razorDocument = projectEngine.Process(projectItem);

RazorCSharpDocument csDocument = razorDocument.GetCSharpDocument();

string csString = csDocument.GeneratedCode;

var targetFilePath = projectItem.PhysicalPath.Replace(projectItem.Extension, ".Designer.cs");

File.WriteAllText(targetFilePath, csString);

}

}

總結(jié)

以上是生活随笔為你收集整理的.net core 生成html,ASP.NET Core 中如何将 .cshtml 视图文件生成为 .cs 文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。