0

mvc のステートレスの問題を理解するのに苦労しています。人のリストを含む画面があるとしましょう。そのうちの 1 つを選択したいのですが、この人を選択したら ID を保持したいので、左側のメニューから注文の画面、アカウントの詳細の画面を開きたいです.... ASPX では、セッションで彼の PersonID を保持し、それを Web サイト全体で使用するだけです。mvcで同じことを行うにはどうすればよいですか? 彼の ID を public static クラスの public 変数に保持するとどうなりますか? それはうまくいきますか?

ありがとう。

4

2 に答える 2

1

ASPXの場合と同様に、セッションを使用します。

静的プロパティを持つ静的クラスを使用するPersonIDと、すべてのユーザーによって共有されます...つまり、値を設定するたびに、すべてのユーザーが同じ値を取得します。正確には、希望どおりではありませんか?

そのため、Webフォームモデルは基本的に多くの機能を抽象化して、Web開発者にシミュレートされたステートフルモデルを提供します。その結果、効果的なWebアプリケーションを作成するために、HTMLとJavaScriptの知識が豊富なWebエキスパートである必要はありませんでした。

Webを介したステートフルプログラミングをシミュレートするために、ASP.NET Webフォームでは、ビューステート、ポストバック、全体的なイベント駆動型パラダイムなどの機能が導入されました。

http://msdn.microsoft.com/en-us/magazine/dd942833.aspx

于 2012-11-01T12:53:07.163 に答える
1

ステートレスな MVC ではなく、HTTP です。ASP.NET およびその他の Web テクノロジでの回避策は、サーバー側のセッション状態と、1 つのクライアントからのステートレス HTTP 要求を 1 つのサーバー側セッション オブジェクトに関連付けることです (これは通常、Cookie を使用して行われます)。

したがって、SessionまたはTempDataプロパティを使用してください。

于 2012-11-01T12:57:20.173 に答える