0

愚かな問題に遭遇しました...

そのため、今はApplication_Startを実装して、ハッシュテーブルをロードします。これは正常に機能します。次にSession_Startで、ユーザーのCookieを解析して名前を取得します。これも、正常に機能します。彼のユーザー名をGlobal.asax.csの変数に保存すると、問題が発生します。これがすべてのプロセス/スレッド間で共有される変数であることに気づきませんでした。ですから、私の質問は、ユーザーのCookieを一度解析してから、プロセス/スレッドの他の場所に確実にデータを保存する方法だと思います。

4

4 に答える 4

1

Cookie をセッションに保存し、後で使用することができます。任意のオブジェクトをセッション コレクションに保存し、有効期限が切れる前に後で取得できます。ここでもっと読むことができます

セッションへの割り当て

Session["anyName"] = "value";

セッション オブジェクトからの取得

string str = Session["anyName"].ToString();
于 2012-08-16T17:41:12.023 に答える
0

それがまさにASP.NETセッションの目的です。この情報をそこに保存します。これは現在のユーザーにのみ固有であり、すべてのユーザー間で共有されるわけではありません。

ちなみに、一部のホイールを再発明しないようにするために、ASP.NETでフォーム認証をチェックアウトすることもできます。

于 2012-08-16T17:38:36.940 に答える
0

セッションだけを使用することはできませんか?

Session["username"] = username;


var username = Session["username"];
于 2012-08-16T17:40:10.387 に答える
0

セッションは間違いなく私が行く方法です。セッションに膨大な量のデータがあると、パフォーマンスの問題が発生する可能性がありますが、各ユーザーの小さな文字列を保存するだけではまったく問題になりません。

于 2012-08-16T17:41:02.063 に答える