c# – 格式化货币总是使用美元,无论用户文化如何

c# – 格式化货币总是使用美元,无论用户文化如何,第1张

概述这应该很简单,但我无法在任何地方找到答案. 在我们的asp.net MVC网站上,我们显示货币值,无论用户文化设置如何,我都需要这些货币值始终为美元. 如果我使用string.format(“{0:C}”,value),那么它会显示用户设置的文化中的值. 这对我们来说是不正确的,因为$1000.00与1000.00欧元不同 我仍然需要使用这个语言方面,这意味着如果他们在法国我想使用法语本地化资源, 这应该很简单,但我无法在任何地方找到答案.
在我们的asp.net MVC网站上,我们显示货币值,无论用户文化设置如何,我都需要这些货币值始终为美元.

如果我使用string.format(“{0:C}”,value),那么它会显示用户设置的文化中的值.
这对我们来说是不正确的,因为$1000.00与1000.00欧元不同

我仍然需要使用这个语言方面,这意味着如果他们在法国我想使用法语本地化资源,所以我不想完全忽视他们的文化设置,但我怎样才能确保货币始终显示以美元?

解决方法 您必须将CurrentCulture指定为en-US并按原样保留CurrentUICulture.

我通常在Application_BeginRequest事件中的global.asax.cs中执行此 *** 作

System.Threading.Thread.CurrentThread.CurrentCulture =      new System.Globalization.CultureInfo("en-US",false);

可以在web.config文件中指定文化,但这有一个缺点 – 它考虑了服务器的自定义区域设置(如果管理员在服务器上更改了en-US文化的货币或日期格式,它会以这种方式获取) – 因此您无法确定应用程序的行为与您创建/测试它时的行为完全相同.

总结

以上是内存溢出为你收集整理的c# – 格式化货币总是使用美元,无论用户文化如何全部内容,希望文章能够帮你解决c# – 格式化货币总是使用美元,无论用户文化如何所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1249907.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存