MvcMailer和Orchard 1.6

时间:2012-12-24 15:19:12

标签: mvcmailer orchardcms-1.6

我正在尝试将MvcMailer集成到Orhcard 1.6中,但我有这个错误:

'HttpContext.SetSessionStateBehavior'只能在引发'HttpApplication.AcquireRequestState'事件之前调用。

在文件Orchard \ Mvc \ Routes \ ShellRoute.cs第54行

我尝试调试,但我发现错误来自:

private void CreateControllerContext() {
            var routeData = RouteTable.Routes.GetRouteData(CurrentHttpContext);
            ControllerContext = new ControllerContext(CurrentHttpContext, routeData, this);
        }

MvcMailer的mailerBase.cs。 在正常的mvc 4应用程序中,一切正常。

有人可以帮助我或已成功安装的人吗?

谢谢..

这篇帖子http://orchard.codeplex.com/discussions/406407同样的问题..如何解决?

1 个答案:

答案 0 :(得分:0)

我通过以下方式为自己解决了这个问题:

  1. 替换1.6版本的ShellRoutes.cs和RoutePublisher.cs 〜/ src / Orchard / Mvc / Routes(即Orchard.Framework)与1.5版本的ShellRoutes.cs和RoutePublisher.cs。在我的情况下,我只是去了CodePlex,选择1.5作为版本,并将每个文件复制/粘贴到VS.
  2. 编译/构建Orchard.Framework。
  3. 复制刚刚编译/构建的Orchard.Framework.dll并将其放在Orchard.Web实例的〜/ bin文件夹中。
  4. 你可以做一个比较和/或消除差异,但我只是选择了上述因为它更快。