我的ASP.net Web应用程序正在从另一个应用程序获取一个名为title的查询字符串的请求。
例如:www.abcdefg.com?title=&Aper%e7u+du+r%e9gime
注意:查询字符串是具有重音字符的法语单词。 “Aperçudurégime”文本使用“ISO-8859-15”编码进行编码,以生成查询字符串文本。
问题 当我使用
访问查询字符串时Request.QueryString["title"]
我将获得一个没有重音字符的解码文本。
例如:Aper udur gime
所以我的问题是,ASP.Net中是否有任何方法(例如:元数据)告诉服务器 使用特定解码器解码或解码例如:“ISO-8859-15”
一旦我能够获得完全相同的查询字符串文本,我就可以使用HttpUtility.UrlDecode生成实际的法语文本。
答案 0 :(得分:2)
您可以使用web.config中的<globalization>
元素来指定请求编码:
<globalization requestEncoding="iso-8859-15" />
答案 1 :(得分:0)
http://msdn.microsoft.com/en-us/library/ms150047.aspx
using System.Web;
using System.Text;
HttpUtility.ParseQueryString(query, Encoding.GetEncoding("iso-8859-15"))[yourParamName];