2017-08-08 5 views
2

Nos serveurs fonctionnent au Danemark en utilisant la culture Da-DK. Nous n'avons spécifié aucune culture dans la solution ASP.NET WebApi. Lorsqu'un point d'extrémité est appelé sur l'Api avec un paramètre décimal, l'API le convertit automatiquement en notation décimale européenne (par exemple 100,01), ce qui entraîne une erreur d'analyse lorsque la décimale est transmise à une autre API sur un autre serveur . Comment pouvons-nous forcer notre API à utiliser la culture américaine et non la culture du serveur Web?WebApi utilise la culture Web Server

Répondre

2

Vous devez définir la localisation par défaut pour votre application. En particulier, vous avez besoin de UseRequestLocalization. Là, vous avez DefaultRequestCulture que vous voulez mettre à votre culture.

Jetez un oeil à ref: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/localization#provide-localized-resources-for-the-languages-and-cultures-you-support

[UPDATE] Je viens de réaliser que vous ne demandez pas pour le cœur de asp.net. Pour api web, vous pouvez aller avec la mise en culture sur Thread.Current

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