Komma als Zahlen-Dezimaltrenntrennzeichen im Get-Call funktioniert nichtC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Komma als Zahlen-Dezimaltrenntrennzeichen im Get-Call funktioniert nicht

Post by Anonymous »

Ich habe ein ASP.NET Core 8-Web mit Kultur auf "SV-SE". In diesem Web gibt es ein reguläres Formular, in dem ein Eingangsdezimal eingereicht wird. Die Eingangsdezimalzahl wird korrekt mit einem Komma als Dezimaltrennzeichen (z. B. 1,00 = 1) angezeigt, und wenn ich Post verwende, funktioniert die Modellbindung gut. Wenn ich die Formularmethode verwende, transformiert die Modellbindung die Modellbindung 1,00 in 100 . Bei Verwendung von GET kann ich die URL -codierte 1,00 als 1%2c00 . /Somecontroller/someaction? Test = 1,00
funktioniert nicht:/somecontroller/someaction? Test = 1%2c00
Wie soll ich meine Webkultur in immer als Decimal -Separator konfigurieren? Gibt es eine Möglichkeit, dies zu tun, oder muss ich eine Art benutzerdefinierte Modellbindung für Decimal implementieren?

Code: Select all

var cultureInfo = (CultureInfo)CultureInfo.GetCultureInfo("sv-SE").Clone();
CultureInfo.DefaultThreadCurrentCulture = cultureInfo;
CultureInfo.DefaultThreadCurrentUICulture = cultureInfo;
Thread.CurrentThread.CurrentCulture = cultureInfo;
Thread.CurrentThread.CurrentUICulture = cultureInfo;
< /code>
Ich habe auch versucht, < /p>
einzustellenCultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator = ",";
< /code>
ohne Glück.public async Task SomeAction(decimal? test)

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post