Как сохранить только один стандартный символ валюты ($) при смене культур? - PullRequest
0 голосов
/ 06 июня 2019

Как сделать так, чтобы веб-приложение отображало валюту только в долларах, независимо от выбранного языка / страны?

SetCulture(string culture)
   {
     CultureInfo.DefaultThreadCurrentCulture = new CultureInfo(culture);
     CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo(culture);
   }  


Text = String.Format("{0:C}", item.TotCostDay);

1 Ответ

1 голос
/ 06 июня 2019

Вы можете попробовать создать Clone текущей культуры с изменением NumberFormat.Currency...:

CultureInfo culture = CultureInfo.CurrentCulture.Clone() as CultureInfo;

CultureInfo usCulture = CultureInfo.GetCultureInfo("en-US");

// Dollar symbol - $
culture.NumberFormat.CurrencySymbol = usCulture.NumberFormat.CurrencySymbol;

// And (may be) some US currency patterns
culture.NumberFormat.CurrencyDecimalDigits = usCulture.NumberFormat.CurrencyDecimalDigits;
culture.NumberFormat.CurrencyPositivePattern = usCulture.NumberFormat.CurrencyPositivePattern;
culture.NumberFormat.CurrencyNegativePattern = usCulture.NumberFormat.CurrencyNegativePattern;

CultureInfo.CurrentCulture = culture;
...