3

Hej 社区,

我是在 SO 提出问题的新手,如果我在某些时候不清楚,请给我留言,我会澄清一下。

  • ASP.NET MVC5
  • 邮政网

情况

我有一个类库,可以使用 Postal.Net 从我的网络应用程序发送电子邮件。视图文件 (*.cshtml) 存储在主 Web 应用程序中(~\Content\email\*),以便在当前域的运行时访问它们。它就像一个魅力。

现在我想在另一个网络应用程序中重新使用电子邮件库和电子邮件模板。我将相同的视图文件放在这个新 Web 应用程序的完全相同的位置(~\Content\email\*)

电子邮件库找到视图文件,我还做了剃刀相关的声明,例如@model,工作,我可以发送电子邮件。

问题

@Raw在 HTML 电子邮件模板中使用,这会在编译期间导致错误消息:

CS0103 The name 'Raw' does not exist in the current context

需要该语句来处理名称的特殊字符并将工作按钮插入电子邮件中。

web.config我在新项目中添加了以下几行:

<configSections>
  <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
    <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
    <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
  </sectionGroup>
</configSections>

<appSettings>
  <add key="webpages:Enabled" value="false" />
  <add key="webpages:Version" value="3.0.0.0" />
</appSettings>

<system.web.webPages.razor>
  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.2.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  <pages pageBaseType="System.Web.Mvc.WebViewPage">
    <namespaces>
      <add namespace="System.Web.Mvc" />
      <add namespace="System.Web.Mvc.Ajax" />
      <add namespace="System.Web.Mvc.Html" />
      <add namespace="System.Web.Optimization" />
      <add namespace="System.Web.Routing" />     
      <add namespace="_MyWebAppName_" />
    </namespaces>
  </pages>
</system.web.webPages.razor>

我希望你有一个想法——我已经没有想法可以尝试了。

谢谢,

/mmr

4

1 回答 1

1

问题无法解决,实现是使用Github 上另一个名为 FluentEmail 的库实现的。它得到维护并且实现起来更简单。

于 2019-12-17T10:47:04.993 回答