セッションはもはやASP MVCのデータを保存するための推奨方法ではなく、ViewData(コントローラからViewへ)とTempData(1つのポストバックのみ)に移行する必要があることを学びました。私たちがSessionを使用すべきでない唯一の理由は、Testabilityを維持することです(MVCはTDDをサポートするため、TestMethodsの実行中にHTTPContext.Sessionが解決されません)。ASPのセッションMVC
しかし、Sessionsによって広く解決された目的は、ViewDataまたはTempDataによって解決されません。セッションは、ユーザーセッション全体のコンテキストを保存します。
MVCで正しい推奨事項と代替案を収集することができません。私は正しい絵を理解するのが間違っているかもしれません。私は議論へのリンクやあなたからの提案を感謝します。
これは、WebFormsで使用されている目的のためにSessionを使用して決定するのに役立ちます。または、現在のアプリケーションを再構築して、Session only with mandatoryと一緒に行くことができます。
おかげ Sumeet
ASP.NET Webフォームでセッション* *を使用した場合(つまり、セッション全体のスコープで*セッションユーザー*に関するアプリケーションごとのセッション情報を格納し、アプリケーションの機能に関連するデータではない場合) ASP.NET MVCでも同じように行う必要があります。しかし、あなたがASP.NET Webフォームでセッションを使用していたのは、ASP.NET MVCが(あなたが書いているように)他のメカニズムを持っているもののための一般的な記憶域であるということです。 – bzlm