WebApi正在使用Web Server文化

时间:2017-08-08 10:41:27

标签: .net asp.net-web-api culture

我们的服务器使用Da-DK文化在丹麦运行。我们没有在ASP.NET WebApi解决方案中指定任何文化。

当使用十进制参数在Api上调用端点时,api会自动将其转换为欧洲十进制表示法(例如100,01),当小数传递给另一台服务器上的另一个API时,最终会导致解析错误。

我们如何强迫我们的Api使用美国文化而不是Web服务器的文化?

1 个答案:

答案 0 :(得分:2)

您需要为应用设置默认本地化。 特别是,您需要UseRequestLocalization。你有DefaultRequestCulture,你想要根据自己的文化进行设置。

看一下ref: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization#provide-localized-resources-for-the-languages-and-cultures-you-support

[UPDATE] 我刚刚意识到你并没有要求使用asp.net核心。 对于web api,您可以在Thread.Current

上设置文化

Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");