Format modelu typu decimal w Razor Engine

0

Borykam się z pozoru błahym problemem, ale nie umiem sobie z nim poradzić :D

Z kontrolera aplikacji webowej ASP.NET Core 5 wysyłam do widoku zmienną typu decimal. Dla uproszczenia będzie to prosty model zawierający tylko tą zmienną. Zmienna posiada wartość 4.6666M.

W Razor View przy użyciu JS przypisuję zmiennej wartość modelu:

<script>
    var jsItem = @Model;
    console.log(@jsItem)
</script>

Model jest rozpoznawany przez silnik Razor jako decimal.

Jednak po wykorzystaniu console.log(@jsItem) w konsoli pojawia się:
4 6666 zamiast: 4.6666.

enter image description here

Dlaczego? Jak to zmienić? Czy chodzi o ustawienia kultury?

Rzeczy których próbowałem:

  • var jsItem = @(decimal)Model

  • var jsItem = @decimal.Parse(Model)

3

Wygląda na formatowanie z wykorzystaniem pl-PL, gdzie separatorem jest przecinek. Powinieneś to widzieć w wygenerowanym źródle HTML po prostu.

@Model.ToString(System.Globalization.CultureInfo.InvariantCulture);
0

@Ktos: Kombinowałem z formatowaniem w stylu: https://stackoverflow.com/a/48504145/12603542

Ale Twój pomysł rozwiązuje problem. Dzięki!

1 użytkowników online, w tym zalogowanych: 0, gości: 1