セッション処理は、MVCの全体的な概念のどこに適合しますか?モデルかコントローラ?MVCのセッション
答えて
SessionStateの目的は、ユーザーのセッションに関するデータを1つのHttpRequestから次のHttpRequestに永続化することです。場合によっては、これは、手動でクッキーを実装するか、セッション情報のデータストアを作成して識別子を渡すよりも簡単な解決策です。これを行うMVCの方法は、SessionStateをラップするTempData
を使用することです。つまり、コアインフラストラクチャの一部をオーバーライドしない限り、SessionStateに直接アクセスする必要はありません。私は、モデルをデータのより比喩的な表現として考える。モデルでsession-dataを使用するのはまったく正しいとは思われません。なぜなら、モデルはおそらくビジネスロジックを表していて、SessionStateが不必要に複雑になるからです。 System.Web.Mvcは、HttpContextを直接使用することなく状態を維持するための多くのメカニズムを提供します。これらのメカニズムは、ControllerContext
、ActionFilter
フィルタリングコンテキスト、ExceptionContext
、AuthorizationContext
、ModelBindingContext
,RouteData
およびViewContext
のプロパティとして含まれています。それらは、セッション状態コレクションに格納する可能性のある別のものを、より論理的に区切られた区画に分けるのに役立ちます。
TempDataは、ControllerContextとViewContextから使用できます。これは、セッション状態機能へのアクセスポイントです。このデータの処理と書き出しを制御したい場合や、アクションフィルタが主な注入点であるかどうかはわかりません。この記事では、モデル状態をリクエスト間で自動的に維持するActionFilterの使用方法について説明します。http://blog.jorritsalverda.nl/2010/03/10/maintainable-mvc-post-redirect-get-pattern/私はそれが役に立つかもしれないと思う。質問はひどく具体的ではありませんでした...私があなたの質問に直接言及しなかった場合は、明確にしてください。
私はそれらをコントローラーレベルに保つか、カスタムアクションフィルターまたはモデルバインダーで非表示にすることをお勧めします。
セッション状態は実際にはWebクライアントのコンセプトです。私はレイヤリングのために自分のモデルから外しておくことを好みます。または、少なくとも私は自分のセッションまたはコンテキストのインターフェイスでそれをラップします。
- 1. ASPのセッションMVC
- 2. MVC - PHPセッションのバリデーション
- 3. セッションの使用MVC
- 4. MVCユーザーログインとセッション
- 5. ASP.NET MVCユニットテスト - セッション
- 6. MVC管理セッション
- 7. ASP.NET MVCセッション
- 8. Asp.Net MVCとセッション
- 9. asp mvcセッション変数
- 10. ASP.Net MVC - TempDataセッションの問題
- 11. セッション終了のASP.net MVC
- 12. RESTTemplateとspring mvc - セッション属性
- 13. ASP.NET MVCセッションとグローバルvsキャッシュ
- 14. セッションを持つMVC 3メンバーシッププロバイダ
- 15. asp.net mvcセッション状態..ヘルプ?
- 16. ASP.NET MVC - フォーム認証/セッションID
- 17. asp.net mvcのメンバーシップ・プロバイダのセッション・ユーザーC#
- 18. ASP.Net MVCコントローラのコンストラクタのセッションnull
- 19. RailsとSpring MVC間のセッションの共有
- 20. DotNetOpenAuth ASP.NET MVC 3セッションの問題
- 21. ASP.NET MVC 3:セッションとフォームの認証
- 22. Spring MVCセッション変数の設定
- 23. MVCのAzureロードバランサ、IPソース、httpセッション
- 24. ASP.NET MVCセッションがnullです。セッション変数は
- 25. セッションがMVC AuthorizeAttributeでnullになる
- 26. Spring MVC - aerospikeセッションを実装する
- 27. spring mvcで正しくセッションを使用
- 28. ASP.NET MVC 3.0セッション変数の有効期限のリダイレクト?
- 29. フォーム認証クッキーのASP.NET MVCユーザーデータとセッションの追加
- 30. ASP.NET MVCでの読み取り専用セッションの指定