1

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は同じ問題として..解決方法は?

4

1 に答える 1

0

私は次のようにして、この問題を自分で解決しました。

  1. ~/src/Orchard/Mvc/Routes (つまり、Orchard.Framework) の ShellRoutes.cs と RoutePublisher.cs の 1.6 バージョンを、1.5 バージョンの ShellRoutes.cs と RoutePublisher.cs に置き換えます。私の場合、CodePlex に移動し、バージョンとして 1.5 を選択し、各ファイルを VS にコピー アンド ペーストしました。
  2. Orchard.Framework のみをコンパイル/ビルドします。
  3. コンパイル/ビルドした Orchard.Framework.dll をコピーし、Orchard.Web インスタンスの ~/bin フォルダーに配置します。

比較したり、違いを取り除いたりすることもできますが、上記の方が速かったので、上記を選択しました。

于 2013-05-06T16:54:28.600 に答える