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