2010-08-13 115 views
0

問題是我通過在請求中傳遞一些值重定向到主頁面的子頁面。 我需要找回操縱我在請求中發送的值的值,並且我不需要在Session中存儲值。有沒有辦法在Response中返回一個值?

+0

[ViewState](http://msdn.microsoft.com/en-us/library/ms972976.aspx)是你的朋友。 – Oded 2010-08-13 07:15:01

+0

Thanx Oded爲您的答覆,但如果我是正確的Viewstate維護在頁面級別。查看一個頁面的狀態對另一個頁面不可見。 – BreakHead 2010-08-13 07:32:11

回答

0

您可以使用PreviousPage屬性,具體取決於您如何進入新頁面。

0

有很多的事情可以做:

  • Page.Request [「ID_Of_Control_You_Are_Interested_In」]會得到你,你需要的值。

  • 如果Server.Transfer的頁面,你可以調用Context.Handler,丟給你來自網頁和遍歷控件集合讓你的價值......(類似於PreviousPage屬性)

您還可以檢查太請求發送的查詢字符串參數:

  • Page.Request.QueryString( 「Param_To_Inspect」)
+0

Dat我知道如何在Request中傳遞參數,但是如何從響應中獲取值 – BreakHead 2010-08-15 05:11:38

+1

您可能想要重寫render方法並通過修改HttpTextWriter來編輯響應?你也可以實現一個HttpModule並直接編輯它使用的方法中的響應。 – brumScouse 2010-08-16 12:13:29

+0

@Paul Waulie:可能值得一試upvote fella? – brumScouse 2010-10-15 21:29:41

0

可以作爲JSON返回你的價值觀作爲響應,然後使用jQuery來獲取數據

0

你有三個選擇:查詢字符串參數,Cookies和會話狀態

查詢字符串參數http://www.aspnet101.com/2007/11/using-the-querystringparameter/

這是在頁面之間傳遞數據的好方法。這是最常用的,並被限制在URL的最大長度。

餅乾http://msdn.microsoft.com/en-us/library/ms178194.aspx 這是一個好方法。它也有一個大小限制。 Cookie的優勢在於您可以堅持可以跨越訪問您的網站的數據。

會話狀態http://msdn.microsoft.com/en-us/library/ms178581.aspx 這一個確定的方法,我會使用這兩種方法之前,以上我會用會話狀態。根據我的經驗,使用會話狀態可以非常快地陷入麻煩。

回答您的問題:您可以從請求中獲取值並將其加載到TextBox中。然後在網頁上,用戶編輯該值並單擊一個保存按鈕,該按鈕將更改後的值發送回服務器。

或者您可以使用javascript將值發回服務器。

相關問題