我嘗試我的對象存儲會話在ASMX Web服務Store對象,並獲得在母版頁這個值 - 得空
user = new MyUser(UserName);
Session["user"] = user;
,並在頁面加載部分母版頁閱讀,但我得到空
user = (MyUser)Session["user"];
,當我用一個簡單的字符串,而不是嘗試對象MyUser
任何想法的工作?
謝謝。
我嘗試我的對象存儲會話在ASMX Web服務Store對象,並獲得在母版頁這個值 - 得空
user = new MyUser(UserName);
Session["user"] = user;
,並在頁面加載部分母版頁閱讀,但我得到空
user = (MyUser)Session["user"];
,當我用一個簡單的字符串,而不是嘗試對象MyUser
任何想法的工作?
謝謝。
我找到了解決方案! 在母版頁中,我嘗試閱讀Page_Load
事件的會話,但它是錯誤的。 當我把它放在Page_Init
事件它的工作:)
假設運行服務的過程是一樣的服務了您的網頁,你需要確保的WebMethod具有由裝飾方法使會話與
[WebMethod(EnableSession = true)]
這裏是more detail另一個答案。
謝謝,但我已經使用這個,會話是工作,但是當我嘗試從母版頁中的會話中讀取對象時,獲得null – ngi
@Jaime Torres Ohhhh man,這不是一個「簡單的答案」......這個節省了我幾天工作的完整回滾,直到我陷入了一個問題中,這個單一屬性解決了它......謝謝你。像你的法文名字一樣; 「'J'aime' vraiment taréponse!」(我真的很喜歡你的回答)。 –
是你的'MyUser'可序列化? – balexandre
是的,它是:'[Serializable]公共類用戶' – ngi
如果你確定它與字符串一起工作,那麼我不知道,對我來說,邏輯部分是根本不工作,他們**將**可能有2個不同的游泳池,而'Sessions'不會像那樣共享。我會使用SQL會話或緩存系統來更改之間的消息。 – balexandre