【问题标题】:Sending HTML email via Hangfire Postal通过 Hangfire Postal 发送 HTML 电子邮件
【发布时间】:2018-02-08 16:17:46
【问题描述】:

在我的应用程序中,我有一个富文本编辑器 (tinyMCE)。我想从那里获取 HTML 输出并插入到 MVC Postal 电子邮件对象中并通过 Hangfire 安排。

虽然我让这个过程按预期工作,但 Html 没有呈现。

不幸的是,我无法使用 Html.Raw(string),因为 Hangfire 运行时它不可用。

我得到了例外:

RazorEngine.Templating.TemplateCompilationException

无法编译模板。当前上下文中不存在名称“Html”其他编译错误可能已经发生。查看 Errors 属性以获取更多信息。

RazorEngine.Templating.TemplateCompilationException:无法编译模板。当前上下文中不存在名称“Html”

可能发生了其他编译​​错误。检查错误属性以获取更多信息。 在 RazorEngine.Compilation.DirectCompilerServiceBase.CompileType(TypeContext context) 在 c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Compilation\DirectCompilerServiceBase.cs:line 108 在 c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateService.cs:line 256 中的 RazorEngine.Templating.TemplateService.CreateTemplateType(String razorTemplate, Type modelType) 在 RazorEngine.Templating.TemplateService.GetTemplate[T](String razorTemplate, Object model, String cacheName) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateService.cs:line 374 在 RazorEngine.Templating.TemplateService.GetTemplate(String razorTemplate, Object model, String cacheName) in c:\Users\abbottm\Documents\GitHub\RazorEngine\src\Core\RazorEngine.Core\Templating\TemplateService.cs:line 352

有什么想法吗?

【问题讨论】:

  • 你是什么意思“换行逗号”?
  • "

    这是一个标题

    这是一个段落

    "
  • 浏览 Chrome 中的开发工具
  • 那些不是逗号。这是一个逗号:,。这是双引号:"。即使在某些 HTML 周围加上双引号,然后在浏览器中查看,它仍然会呈现结果而不是标记。
  • 您是否在“邮政”视图中仅尝试过@Raw(Model.Message)

标签: hangfire ihtmlstring


【解决方案1】:

由于 Postal 使用 RazorEngine 呈现 Razor 视图,因此如果您想直接将 HTML 添加到视图而不转义,则必须使用 @Raw(Model.Message)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-23
    • 1970-01-01
    • 1970-01-01
    • 2016-07-16
    • 2016-03-10
    • 2014-12-10
    • 2013-01-20
    • 1970-01-01
    相关资源
    最近更新 更多