我的web.config中有以下设置(不幸的是)
<globalization fileEncoding="Windows-1252" requestEncoding="Windows-1252" responseEncoding="Windows-1252" />
如果我想将一个页面的请求编码更改为UTF8,我不能仅根据http://msdn.microsoft.com/en-us/library/39d1w2xf(v=vs.100).aspx使用<%@ Page RequestEncoding="utf-8" ResponseEncoding="utf-8" %>
,因为这些属性根本不存在。
如果我将代码添加到我的页面代码
Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
Me.Request.ContentEncoding = Encoding.UTF8
End Sub
强制UTF8作为请求编码,它似乎根本不起作用。但是,如果我将web.config更改为使用<globalization requestEncoding="UTF-8" responseEncoding="UTF-8" />
,那么它适用于此页面。但我不想在全球范围内更改设置。
有人有什么建议吗?
答案 0 :(得分:3)
您可以使用location
文件中的Web.config
部分为单个页面或文件夹设置特定属性。在您的情况下,您应该添加类似于以下的配置:
<configuration>
<system.web>
<globalization fileEncoding="Windows-1252" requestEncoding="Windows-1252" responseEncoding="Windows-1252" />
</system.web>
<location path="yourfile.aspx">
<system.web>
<globalization requestEncoding="utf-8" responseEncoding="utf-8" />
</system.web>
</location>
<configuration>