Ich muss mehrere Währungen in SQL Server speichern. Ich verstehe, dass SQL nicht alle verschiedenen Arten von Währungen unterstützt (es sei denn, ich speichere es als String, aber das möchte ich nicht).Konvertieren Sie alle Währungszeichenfolge in doppelte
Meine Idee war, alle Werte aus ihrem Währungsformat in ein Standard-Double zu konvertieren und das stattdessen zu speichern. Dann neu formatieren basierend auf den Kulturinformationen beim Anzeigen. Ich habe jedoch versucht, etwas wie z.B.
var cultureInfo = new System.Globalization.CultureInfo("en-US");
double plain = return Double.Parse("$20,000.00", cultureInfo);
Das ist nicht immer scheint es immer ein FormatException
wirft zu arbeiten. Selbst das Entfernen des Währungssymbols und das alleinige Versuchen, dies allein anhand der Zahl zu tun, macht dasselbe. Dies ist nur ein Beispiel, ich möchte so ziemlich jede Art von Währung unterstützen.
Gibt es eine Standardmethode, um Währungen auszugeben und den Wert doppelt zu erhalten?
Sie möchten die Währung nicht doppelt speichern. Zum Beispiel können Sie 0,01 nicht genau speichern. Verwenden Sie ein Dezimalformat. – staticsan
@statiscan - Ich habe die Datenbank nicht lange nach dieser Frage aktualisiert, um Dezimalzahlen zu verwenden. – James