2013-02-21 24 views

答えて

14

デフォルトでは、TempDataはASP.NETセッションをストレージとして使用します。したがって、サーバーに格納されます(InProcがデフォルトです)。しかし、他のASP.NETセッションステートモードStateServerとSqlServerを定義することもできます。 ASP.NETセッションを使用したくない場合は、独自のTempDataプロバイダを作成して、自分でストレージを処理することもできます。

+0

ありがとうございました。 ASP.NETのセッション状態モードについて詳しく調べてみましょう。 –

5

それは、セッションストレージに格納されていますが、TempDataSessionの間に1つの決定的な違いがあります:のみユーザーのセッションのために、それは、我々が読んでいるだけまでそれを持続し、取得

TempDataが利用可能であるが、 HTTP要求の最後にクリアされます。

TempDataの使用に適したシナリオは、2つの要求(リダイレクトシナリオ)の間にデータを保持する必要がある場合です。私が考えることができる別のシナリオは、POST操作が失敗した後にエラーメッセージを返すことです。

+0

ありがとう、私は受け入れられたとして複数の答えを選択できることを望む。 –

+1

* TempDataはユーザーのセッションでのみ使用できるため、HTTPリクエストの終わりに読み取ってクリアするまで持続します*セッションはHTTPリクエストよりも長く続きます。だから* TempDataはユーザーのセッションにのみ利用可能です*正しい? –

関連する問題