C# 如何在控制台应用程序中使用Actionmailer.Net.Standalone?

C# 如何在控制台应用程序中使用Actionmailer.Net.Standalone?,c#,web-applications,razor,console-application,actionmailer.net,C#,Web Applications,Razor,Console Application,Actionmailer.net,是否可以在控制台应用程序中使用Actionmailer.Net.Standalone?我不断得到一个错误: 在路径[EmailTemplates]中找不到任何名为[CRD.html.CSHTML]的CSHTML或VBHTML视图。确保在文件名中指定格式(即:CRD.html.cshtml.txt.cshtml或CRD.html.cshtml.html.cshtml.cshtml) 代码 我是否需要在某个地方实现一个RazorViewEngine,因为它不是控制台应用程序的标准配置?有一个开源项

是否可以在控制台应用程序中使用
Actionmailer.Net.Standalone
?我不断得到一个错误:

在路径[EmailTemplates]中找不到任何名为[CRD.html.CSHTML]的CSHTML或VBHTML视图。确保在文件名中指定格式(即:CRD.html.cshtml.txt.cshtml或CRD.html.cshtml.html.cshtml.cshtml)

代码


我是否需要在某个地方实现一个
RazorViewEngine
,因为它不是控制台应用程序的标准配置?

有一个开源项目作为一个通用模板引擎,名为

一个基于微软Razor解析技术的模板引擎。 RazorEngine允许您使用Razor语法来构建健壮的 模板

简单地

string template = "Hello @Model.Name! Welcome to Razor!";
string result = Razor.Parse(template, new { Name = "World" });
也可在NuGet中获得

安装RazorEngine软件包


虽然有点晚了,但可能还是有帮助的:

尝试改变

return Email("CRD.html.cshtml");


扩展会自动追加。

您的用法正确,但ActionMailer使用了我在项目中没有的http上下文。感谢您的回答。ActionMailer.Standalone独立于任何HttpContext或对ASP.NET的依赖关系。对我来说,它在控制台应用程序中工作。唯一的问题是它依赖于RazorEngine nuget包,而该包本身依赖于Microsoft.AspNet.Razor包。但这通常不会造成任何问题。顺便说一下,解决此问题的方法是右键单击
CRD.html.cshtml
,单击属性,然后将“复制到输出目录”更改为“如果更新,则输出”。此外,使用NuGet安装包ActionMailer.Standalone。因为此解决方案没有任何好处(例如Actionmailer中的intellisense)这非常类似于
string.Format(…)
这甚至不能远程回答这个问题
return Email("CRD.html.cshtml");
return Email("CRD");