Asp.net mvc 4 System.Web.HttpUtility.UrlEncode方法使用不同的语言值给出错误的结果
我的项目中的Web.HttpUtility.UrlEncode方法。当我用英语编码名字时,我得到了正确的结果。比如说,Asp.net mvc 4 System.Web.HttpUtility.UrlEncode方法使用不同的语言值给出错误的结果,asp.net-mvc-4,c#-4.0,Asp.net Mvc 4,C# 4.0,我的项目中的Web.HttpUtility.UrlEncode方法。当我用英语编码名字时,我得到了正确的结果。比如说, string temp = System.Web.HttpUtility.UrlEncode("Jewelry"); 然后我得到了temp变量的精确结果。但若我用俄语写名字,那个么我得到的结果就不同了 string temp = System.Web.HttpUtility.UrlEncode("ювелирные изделия"); 然后我得到了温度变量中的值,比如%
string temp = System.Web.HttpUtility.UrlEncode("Jewelry");
然后我得到了temp变量的精确结果。但若我用俄语写名字,那个么我得到的结果就不同了
string temp = System.Web.HttpUtility.UrlEncode("ювелирные изделия");
然后我得到了温度变量中的值,比如%d1%8e%d0%b2%d0%b5%d0%bb%d0%b8%d1%80%d0%bd%d1%8b%d0%b5+%d0%b8%d0%b7%d0%b4%d0%b5%d0%bb%d0%b8%d1%8f
有人能帮我如何按照语言准确命名吗
谢谢大家! 事实上,这种方法为您做了正确的事情 它对非ASCII字符进行编码,以便在所有情况下都有效,并通过互联网传输。若您将temp变量作为参数放入URL中,您将在服务器端得到正确的结果。这就是UrlEncode的含义。在这里,你的问题根本不是问题。 因此,为了进一步了解URL编码,请查看此链接: 如果将该俄语单词输入到我给出的页面中的URL编码函数部分,它将返回与Web.HttpUtility.UrlEncode方法相同的结果 有人能帮我如何按照语言准确命名吗 简而言之:不是用那种方法,但它可能取决于你的确切目标 详情如下: 通常情况下,see定义的URI可能包含以下任何字符:ABCDEFGHIjklmnopqrstuvxyzabCDEFGHIjklmnopqrstuvxyzo123456789-.~:/?[]@!$&'*+,;=。任何其他字符都需要使用百分比编码%hh进行编码 这就是为什么要生产 根据RFC 3986,URL中不允许包含字符的字符串 今天,在URL中可能没有必要使用UrlEncode。见示例:
UrlEncode("Jewelry") -> "Jewelry"
UrlEncode("ювелирные изделия") -> "%d1%8e%d0%b2%d0%b5%d0%bb%d0%b8%d1%80%d0%bd%d1%8b%d0%b5+%d0%b8%d0%b7%d0%b4%d0%b5%d0%bb%d0%b8%d1%8f"