如何在控制台应用程序中使用Razor View Engine?
我的控制台应用需要发送HTML电子邮件。 我想在Razor视图中以HTML格式编写电子邮件,并让引擎生成电子邮件正文内容。
这意味着没有控制器或请求。 我怎么能这样做?
有一个开源项目允许使用Razor作为一般的模板引擎:它叫做RazorEngine ( GitHub上的代码)
项目页面的示例:
string template = "Hello @Model.Name! Welcome to Razor!"; string result = Razor.Parse(template, new { Name = "World" });
我在GitHub上有一个演示项目,它演示了如何使用Razor视图在正在运行的ASP.Net应用程序的上下文之外呈现内容。 它完全支持布局,_ViewStart文件,partials,HtmlHelper,Urlhelper等。
请注意,它使用RazorGenerator Visual Studio工具预编译Razor模板。
有关更多背景信息 ,请参阅我的介绍性博客文章 。