摘要:HttpUtility.UrlEncode v.s. Server.UrlEncode
HttpUtility.UrlEncode:可依照自訂的編碼做UrlEncode
Server.UrlEncode:依照server設定的編碼做UrlEncode
(一)HttpUtility.UrlEncode:
public static string UrlEncode (string str,Encoding e)
例如:
HttpUtility.UrlEncode("測試", Encoding.UTF8) => %e6%b8%ac%e8%a9%a6
HttpUtility.UrlEncode("測試", Encoding.GetEncoding("BIG5")) => %b4%fa%b8%d5
(二)Server.UrlEncode:
URLEncode( string)
這個部份的編碼無法從程式中修改,不過可以從ASP.NET組態設定地方修改
方法1.從IIS設定
方法2.從web.config修改
在<system.web>節點下新增or修改
<globalization responseEncoding="utf-8" requestEncoding="utf-8" />
結論:HttpUtility.UrlEncode彈性較佳
參考資料:
http://msdn.microsoft.com/zh-tw/library/h10z5byc(v=VS.80).aspx
http://msdn.microsoft.com/en-us/library/ms525738(v=vs.90).aspx