在微软的ASP.NET中,默认的输出字符集是UTF-8,也就是说,如果把ASP.NET程序Deploy到IIS的时候,当用浏览器访问,你会发现页面的Encoding是UTF-8。但是,经常有时候我们不用UTF-8,比如在手机Mobile画面的时候,一般手机浏览器只支持当地的字符集,比如日本的DOCOMO手机只支持shift_jis编码,那么我们如何来进行编码的转换呢。
第一种方法就是变更IIS的属性。在IIS管理器中,当你选择你Deploy的虚拟目录的时候,察看其属性。在ASP.NET标签内, 选择[构成编辑],谈出来的构成设定画面其中的[应用程序]标签内,可以设置Request和Response的encoding形式,在这里设置为你需要的字符集,然后再打开ASP.NET画面,就发现输出字符集发生了变更。这个是第一种做法,优点是完全和应用程序无关,仅在服务器进行配置就OK了。缺点就是每次建立虚拟目录都需要设置一下服务器。
第二种方法就是修改ASP.NET程序的web.config文件。在其中<system.web>标签中,添加下面一行

这样就可以在IIS启动以后自动deploy为shift_jis编码格式的应用程序了。这种方法缺点就是改变了应用程序,不过也不能算缺点,优点就是对服务器配置没有影响了。