Tim*_*Tim 4 asp.net iis azure asp-classic azure-sql-database
我最近移动了一个经典的asp站点,它使用SQL Server到Azure共享网站,使用SQLAzure作为数据库.
其地区是北欧(爱尔兰).
我需要数据库在en-GB语言环境下运行,因此从SQL返回的日期格式为DD/MM/YYYY,在IIS中也是如此.但是,它们目前使用MM/DD/YYYY US格式返回.
我尝试将以下内容添加到web.config:
<globalization culture="en-GB"
uiCulture="en-GB" />
Run Code Online (Sandbox Code Playgroud)
但是当我将以下内容添加到页面时,我仍然可以获得美国日期格式.
<% response.write(now()) %>
Run Code Online (Sandbox Code Playgroud)
即
2/10/2015 11:32:13 AM.
Run Code Online (Sandbox Code Playgroud)
此外,我无法看到门户网站中的位置或通过SQL Server Management Studio我可以将用户设置更改为GB区域设置.我可以看到从SQL返回的日期也是美国日期格式.
除非我遗漏了一些东西,否则这肯定是英国Azure客户的常见问题,但我找不到任何资源来解决这个问题.
好的,以修复"经典Asp"方面.添加具有以下内容的global.asa似乎可以修复英语-GB语言环境
<script language="vbscript" runat="server">
sub Session_OnStart
'some code
Session.LCID = 2057
end sub
</script>
Run Code Online (Sandbox Code Playgroud)
对于具有类似问题的MVC5应用程序,我读到以下内容应该可行
<configuration>
<system.web>
<globalization uiCulture="en-GB" culture="en-GB" />
</system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)
但是在Azure中,我无法使用此方法解决内部服务器错误.
但我确实在Global.asax中成功实现了以下内容,
它正确地呈现了en-GB日期格式:
protected void Application_PreRequestHandlerExecute(object sender, EventArgs e)
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-GB");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1823 次 |
| 最近记录: |