Ich schreibe eine benutzerdefinierte Zeichenfolge zu Decimal Validator, die Decimal.TryParse verwenden muss, die Kultur ignoriert (dh es ist egal, ob die Eingabe "." Oder "," als Dezimalpunkt enthält) Separator). Dies ist die vorgeschlagene Methode:Culture Invariant Decimal.TryParse()
public static bool TryParse(
string s,
NumberStyles style,
IFormatProvider provider,
out decimal result
)
ich nicht herausfinden kann, was als dritten Parameter zu verwenden. Die Beispiele, die ich gesehen habe, sehen so aus:
so erstellen sie eine bestimmte Kultur. CultureInfo hat keine "CreateInvariantCulture" -Methode, und CultureInfo.InvariantCulture hat nicht den erforderlichen Typ. Was ist die richtige Verwendung?
aus der [Microsoft Dokumentation] (https://msdn.microsoft.com/en-us/library/9zbda557 (v = vs.110) .aspx) sieht es aus wie .NET auf Ihre lokalen Systemeinstellungen schaltet sich, wenn Sie nicht angeben, eine Kultur: 'Parameter s analysiert wird, um die Formatierungsinformationen in einem Number-Objekt für das aktuelle System culture.' initialisiert –
Parsing 1,5 bis 15 nicht wirklich richtig ist, ist es? Wenn ',' ein Tausendertrennzeichen ist, sollte es an der Position 10 nicht erlaubt sein. Ich denke, Parsing 1,5 mit Culture Invariant Parsing sollte fehlschlagen. –