我正在开发一个简单的网站,我需要在用户名和其他字段中使用土耳其语字符(ç,ş,ğ,ı,ü)。执行以下语句时,

Response.Redirect("View2.aspx?ApplicantName=" + applicantname);


当申请人姓名中包含“ü”时,无法获得申请人的姓名。我怀疑这是因为“ü”的表示形式中的与符号(&)为ü

那么我需要做什么来解决它?

最佳答案

您只需要适当的URLEncoding

Response.Redirect("View2.aspx?ApplicantName=" + Server.UrlEncode(applicantname));


或者,如果您使用的是Unicode:

Response.Redirect("View2.aspx?ApplicantName=" + HttpUtility.UrlEncode(applicantname, System.Text.Encoding.GetEncoding("ISO-8859-1")));


不要忘记在另一端使用URLDecode

参考文献


MSDN for Server.UrlEncode
MSDN for HttpUtility.UrlEncode(text, Encoding)
MSDN for System.Text.Encoding

关于c# - C#ASP.NET外国字符(ü)``&''符号的混淆,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6324365/

10-13 09:41