2011-12-01 92 views
2

糾正我,如果我做錯了。將對象從一個Aspx傳遞給另一個來自Javascript

我有一個登錄頁面,它使用Webservice來處理登錄。在我的登錄頁面中,我使用json和JSon來使用web服務。

登錄處理後,我收到一個對象,我想將收到的對象重定向到主頁。

讓我知道如何。

感謝 塞繆爾

回答

1

POST將收到的JSON重定向到服務器,並將JSON反序列化爲您的類型化對象。您可以考慮將對象保留在SESSION中並在需要時訪問它。

UPDATE

把一個隱藏字段在您的ASPX/ASCX頁

一旦你從你的服務收到您的JSON數據。只要把你的迴應放在隱藏的領域。 (使用jQuery)

$("input[id$=jsonResponse]").val(responseFromService); 

在您Page_Load方法對你home.aspx

使用JavaScriptSerializer到反序列化JSON數據

JavaScriptSerializer serializer = new JavaScriptSerializer(); 

LoginData loginDataObject = serializer.Deserialize<LoginData>(jsonResponse.Value); 

現在你可以考慮把你的loginDataObjectSESSION,並通過訪問你的應用範圍

// to store in session 
Request.Session["loginData"] = loginDataObject; 
// to retrieve from session 
LoginData loginDataObject = (LoginData) Request.Session["loginData"]; 
+0

穆尼姆,任何鏈接或樣品模擬代碼讚賞,因爲我是一個新手。 –

+0

@塞繆爾請檢查更新的代碼 –

+1

非常感謝Lot Munim。節省了一些寶貴的時間。 –

0

你可以存儲在一個cookie的對象,並使用location.href或類似的東西改變URL?

+0

嗨尼爾,除了餅乾之外,還有別的辦法嗎?我覺得所有客戶都可能無法啓用cookie,並且時間難以追蹤。 –

+0

不是用於在請求之間持續登錄的Cookie嗎?有@Munim的ASP.NET會話選項 - 但我很確定會話需要cookies(除非id在查詢字符串中看起來很可怕)。我想不出另一種方式,對不起。 –

相關問題