Измените символ валюты в приложении

Я получаю контроллеры от базового класса:

namespace merawi.Controllers
{
    public class BaseController : Controller
    {
        public CultureInfo trTR = new CultureInfo("tr-TR");

        public BaseController()
        {
            trTR.NumberFormat.CurrencySymbol = "TL";
        }
    }
}

и используйте этот оператор для форматирования валют:

ViewBag.SellingPrice = sp.ToString("C", trTR);

Однако в представлениях, которые имеют модели просмотра, такие как

@model List<merawi.Models.DocumentWorkStep>

Мне нужен способ отформатировать валюты по желанию.

SellingPrice — десятичное поле класса DocumentWorkStep:

public Nullable<decimal> SellingPrice { get; set; }

и используя это

<td>@string.Format("{0:C}", res.SellingPrice)</td>

выходы ₺, мне нужно "TL"

Мне нужен способ получить доступ к объекту trTR из файлов просмотра...

Спасибо


person burakk    schedule 13.07.2013    source источник


Ответы (2)


Добавьте это в свой файл web.config, предполагая, что вы хотите, чтобы одна и та же культура использовалась во всем вашем приложении:

<configuration>
    <system.web>
        <globalization uiCulture="tr-TR" culture="tr-TR" />
    </system.web>
</configuration>
person ataravati    schedule 13.07.2013

В моем случае я добавляю тег глобализации в файл web.config, а также, поскольку нам нужно настроить формат языка и региональных параметров (например, использовать "." вместо "," в качестве десятичного числа в FR-CA), я добавляю настройку в Global.asax.vb , который может установить глобализацию глобально.

Web.config:

<globalization culture="fr-CA" uiCulture="fr-CA"/>

Глобальный.asax.vb:

Private Sub MvcApplication_BeginRequest(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.BeginRequest
    StartSession()
    Dim  info as new Globalization.CultureInfo(System.Threading.Thread.CurrentThread.CurrentCulture.ToString())
    info.NumberFormat.CurrencyDecimalSeparator = "."
    info.NumberFormat.NumberDecimalSeparator = "."
    info.NumberFormat.PercentDecimalSeparator = "."
    info.NumberFormat.CurrencyGroupSeparator = ","
    info.NumberFormat.NumberGroupSeparator = ","
    info.NumberFormat.PercentGroupSeparator = ","
    info.NumberFormat.
    System.Threading.Thread.CurrentThread.CurrentCulture = info
End Sub

Это мой случай. Надеюсь, это поможет. Спасибо.

person Jansen    schedule 23.10.2013