0

mvc3コントローラーでTempData[]を使用しようとしていますが、次のエラーが発生します。

SessionStateTempDataProviderクラスでは、セッション状態を有効にする必要があります。

以下はwebconfig(私のコードやプロジェクトではありません)に設定されていますが...

<modules runAllManagedModulesForAllRequests="true">
  <add name="Custom http Module" type="CustomHttpModule" />
</modules>

ここで、CustomHttpModule:

public class CustomHttpModule: IHttpModule

これは、このCustomHttpModuleクラスで変更または定義できる構成設定ですか?

4

1 に答える 1

2

IRequiresSessionStateHTTP モジュールからセッションにアクセスできるようにする場合は、モジュールがマーカー インターフェイスを実装していることを確認してください。

public class CustomHttpModule: IHttpModule, IRequiresSessionState
{
    ...    
}

また、セッション状態が有効になっweb.configていることを確認してください。

<sessionState mode="InProc" />

もちろん、ここで指定しているモードは、セットアップと要件によって異なります。たとえば、セッション データをメモリに格納する Web ファームで実行している場合、Web ファームの各ノードが独自のセッションを格納し、共有が不可能になるため、エラーが発生しやすくなります。この場合、ファームのノード間でセッションを共有できる他のモードを検討する必要があるかもしれません。

于 2012-05-01T17:38:33.120 に答える