2

オブジェクトを asmx Web サービスのセッションに保存しようとしています

 user = new MyUser(UserName);
 Session["user"] = user;

ページ読み込みセクションでマスターページから読み取るが、null になる

user = (MyUser)Session["user"];

MyUserオブジェクトの代わりに単純な文字列を試してみるとうまくいきます

何か案が?

ありがとう。

4

3 に答える 3

5

サービスを実行するプロセスがページを提供するプロセスと同じであると仮定すると、メソッドを

[WebMethod(EnableSession = true)]

これは、より詳細な別の回答です。

于 2012-07-04T20:57:55.360 に答える
0

サービスのクライアントは誰ですか?ページのクライアントは誰ですか?彼らはクッキーを共有していますか?

セッション共有には同じセッションIDを持つセッションCookieの共有が含まれるため、これらの質問への回答は基本です。

あなたが書いたものからそれは明確ではありませんが、おそらくあなたは2つのクライアント(ウェブサービスクライアントとページクライアント)の間でクッキーを共有する(例えばコピーする)必要があります。

于 2012-07-04T17:43:08.623 に答える
0

解決策を見つけました!マスター ページで、イベントのセッションを読み込もうとしましたPage_Loadが、間違っていました。私がイベントに入れたとき、Page_Initそれはうまくいきました:)

于 2012-07-05T10:46:07.597 に答える