我正在建立一个需要同时支持英语和波斯语的网站。该站点使用 ASP.NET MVC 3 和 .NET 4 (C#) 构建。我所有的控制器都继承自 BaseController,它将文化设置为“fa-IR”(在测试期间):
Thread.CurrentThread.CurrentCulture = new CultureInfo("fa-IR");
Thread.CurrentThread.CurrentUICulture = new CultureInfo("fa-IR");
在我看来,我使用静态助手类来转换为正确的时区并格式化日期。喜欢:
DateFormatter.ToLocalDateAndTime(model.CreatedOnUtc)
我正在用 MoneyFormatter 为钱做同样的事情。对于金钱,波斯语的货币打印正确(或者,至少我认为是这样,因为我不知道任何波斯语。稍后将由我们的翻译人员进行验证)。对于正确打印月份的日期也是如此。这是它当前显示的内容:
为了钱:
قیمت: ريال 1,000
对于日期:
21:01 ديسمبر 3
在这些示例中,我希望数字也以波斯语打印。你如何做到这一点?
我也尝试过添加:
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
在 HEAD 标记中,如某些论坛所推荐的那样。虽然没有改变任何东西(据我所知)。我还在我的浏览器语言(IE 和 Firefox)中添加了“fa-IR”作为第一语言。也没有帮助。
有人对如何解决这个问题有任何想法吗?如果可能的话,我宁愿避免在英文数字和波斯数字之间创建翻译表。
最好的问候,
埃里克