2013-01-25 33 views
0

我確定我看起來很簡單,但我記不起如何更改「GET」變量的值。更改GET/POST變量的值

例如,說我有網址www.food.com/food.aspx?foodType=Healthy

我知道Request.QueryString["foodType"]可以用來檢索值,但如果我想說,變「Healthy」到「Unhealthy」,我將如何改變回帖後的價值?

我現在對我的按鈕正在使用點擊事件,但我堅持要更改「foodType」的值。我嘗試使用​​,但沒有奏效。

任何想法?

+0

不知道這是你尋找的,但可能有幫助。如果沒有,我會刪除這個評論http://stackoverflow.com/questions/3813934/change-single-url-query-string-value –

+0

他們調用相同的網址?請注意Post方法不能被Get方法調用 –

回答

1

我不確定你的用例是什麼,但是你不能修改這個集合。正如@Grant所提到的,集合是隻讀的。

如果您在源使用查找HttpRequest它創建QueryString收集這樣的:

new HttpValueCollection(_queryStringText, true, true, Encoding.Default); 

這第二個參數設置集合爲只讀。

0

據我所知,你不能;該集合是隻讀的,只有在將響應作爲原始請求的副產品返回時才存在。您可以使用Response.Redirect(url),其中url是原始URL的值已更改 - 這將重新發出請求,服務器將有機會「使用」新變量並向用戶提供結果(指向新的URL,即使頁面是相同的)。