2013-04-23 29 views
2

我正在使用QueryStrings用戶從下拉列表中自動選擇值。此下拉列表中的某些值包含「&」。「&」在QueryString值

E.g. 「Acquisitions & Development」

當用戶通過「&」值時,字符串值在下半部分之前被截斷。

string functionalDepartment = Request.QueryString["FunctionalDepartment"]; 
//returns "Acquisitions " 

當從QueryString中獲取值時,是否可以包含值的後半部分?

+0

您還可以使用的ID,而不是描述。現在當你的描述發生變化時,鏈接就會中斷 – CodeCaster 2013-04-23 09:33:49

回答

2

&字符需要進行URL編碼,因爲&用於將查詢字符串劃分爲名稱=值對。當創建的URL,使用方法:

HttpUtility.UrlEncode(url); 
2

通過它來查詢字符串之前,只需更換:

.Replace("&","%26"); 

或使用Server.URLEncode()

1

你可以用戶System.Web.HttpUtility.UrlEncode而下拉設定值。

這將確保&不會破壞值。

0

Server.UrlEncode("url")將解決烏爾問題。

例子:

MyURL = "http://www.ursite.com/urpage.aspx?ReqStr=" + Server.UrlEncode("ASP.NET Examples");