私はASP.NET MVC 3を使用していますが、私は要求間で維持する必要があるC#オブジェクトを持っています。これは、この質問にとって本当に重要ではないサーバー側の状態情報を維持します。現在、このオブジェクトはセッションに直列化され、各要求時に引き出されます。MVC 3の状態の永続性のためにビューにオブジェクトを格納する最も良い方法は?
このアプローチの問題は、オブジェクトがセッション固有のものであることですが、各リクエストに固有のものにしたいと思います。したがって、ブラウザで2番目のタブを開くことは、同じセッションであるため、最初のタブと同じオブジェクトを共有するのではなく、基本的に独自のオブジェクトを持つことになります。
明らかに、私はこのオブジェクトをページに保存し、要求を返して戻す必要があります。私はこれについて最善の方法が何であるか考えている。クライアントはこのオブジェクトの情報を必要とせず、このオブジェクトのデータは機密データではないため、訪問者が閲覧することを防止しようとはしていません。私は単に、要求の間にこのオブジェクトを格納する最良の方法が何であるか不思議に思っています。 C#オブジェクトをビューに直列化する単純な方法はありますか?たとえば、隠しフィールド(Webフォームビューステートに似ています)のようにして、それぞれの要求を取り戻すのですか?
単に 'Html.Hidden'や' Html.HiddenFor'を使わない理由はありますか? –
私はC#オブジェクトをシリアル化する必要があるので。私が隠しフィールドで行った場合、オブジェクトをビューステートスタイルのストレージに集中して次の要求でシリアル化するのではなく、オブジェクトのすべてのプロパティに対して非表示のフィールドを持たなければなりません。 – Chev
ああ、私はそれを逃した。それははるかに理にかなっています。申し訳ありません:) –