【发布时间】:2012-10-30 19:38:23
【问题描述】:
我在这里遇到了一个奇怪的问题,我不确定是它的 ASP.NET 版本、IIS 还是我做了一些愚蠢的事情(经验告诉我它可能是第 3 项。)
我有 2 个网站在 w2k3 上运行良好,1 个是 ASP.NET 1.1,另一个是 2.0,货币在网页上正确显示。
自从将这些迁移到 w2k8 框和 IIS 7 后,我遇到了一个奇怪的问题,即 1.1 站点现在显示的是 $ 而不是用户浏览到的本地货币。但是 2.0 的网站运行良好。
两者都将 IIS 设置为相同的全球化。 (没有文化,客户端是假的,UI 文化是英语 (en))。
两个站点都托管在同一台服务器上,我能看到的唯一区别是;
1 使用<Databinder.Eval(... Price, "{0:c}")> 绑定,另一个绑定到使用String.Format("{0:c}"); 的属性
所以作为代码没有改变我觉得这是一个 IIS 问题。但由于这两个站点在 IIS 中具有相同的全球化设置,我认为不可能。
那么,有谁知道发生了什么以及如何解决它?
【问题讨论】:
-
查看其他 SO 答案以获得可能的解决方案:stackoverflow.com/a/5763347/139917
-
我明天会调查,但由于这是一个旧的/笨重的网站,我会尽可能避免干扰 :) 谢谢,如果我必须去,我会回复沿着那条路
-
是否可以在您的应用程序中添加一些调试代码?例如在你输出当前文化的 global.asax 中?您是否对所有网站使用相同的浏览器?
标签: asp.net iis globalization