2014-09-27 60 views
0

在C#中創建會話webservice在C#webservice中創建會話

我需要創建一個會話以在webservice中存儲用戶名。

在此WebService我從用戶名的值創建會話:

[WebMethod(EnableSession = true)] 

Session["Username"] = Username.ToString(); 

在這個其他web服務我有一個從用戶名的值調用會話:

[WebMethod(EnableSession = true)] 

string valueFromSession = Session["Username"].ToString(); 

我有錯誤,當我嘗試從用戶名的值恢復會話。

object reference not set to at instant of object 

在此先感謝您的幫助。

+0

確保啓用了客戶端cookie並實際調用了第一個方法。 – codebased 2014-09-27 06:35:58

回答

0

檢查

Username.ToString() 

我認爲這是空的,這就是爲什麼錯誤是彈出窗口。

+0

用戶名在第一個webservice中不是空的,我有正確的值 – comex 2014-09-27 07:37:36

+0

@comex嘗試「以字符串」代替「.ToString()」,例如Username.ToString();使用Username作爲字符串; – user3834541 2014-09-27 08:35:47

0

客戶端是否在每個請求中發回從服務器收到的cookie?如果不是,則需要將Cookie發送到請求。

0

檢查[WebMethod(EnableSession = true)]實際上被調用。您收到此錯誤,因爲Session [「用戶名」]沒有任何值。

+0

用戶名在第一個webservice中不是空的,我在visual studio中添加了正確的值 – comex 2014-09-27 07:38:51

+0

添加Session [「用戶名」]來快速監視並檢查每個回發中的Session [「用戶名」]值。檢查哪個回傳,會話的值變爲空。 – 2014-09-27 09:38:59