Frage

Aus irgendeinem Grunde, ASP.NET-Code auf meinem Server kehrt nun ein Format von TT / MM / yyyy statt MM / tt / , wenn ich < strong> DateTime.ToString ( "g") .

Anstatt mit einem konkreten Formatstring oder Culture Argumente all „g“ Formatstrings ersetzt, gibt es eine Weise, die ich nur außer Kraft setzen kann, über die Anwendung des Standard „short date“ Format?

Meine Präferenz ist eigentlich "yyyy-MM-dd" als Standardformat, aber ich kann mit dem US-centric MM / tt / leben, da alle Nutzer in den USA sind.

Zur Verdeutlichung:. Ich mag nicht die gesamte Standardkultur ändern, die Dinge wie Währung und die Verwendung von Dezimalzahlen / Kommas in Formatierung von Zahlen auswirken könnte

Ich will nur jedes ToString außer Kraft zu setzen ( "g") rufen Sie das ISO / IEC 8824 Datumsformat ( "yyyy-MM-dd") zu verwenden.

Ich kann über meinen Code suchen und ersetzen einen Culture in jedem ToString () Aufruf zu zwingen, aber das macht mich nicht als die wartbare Lösung schlagen.

Meine aktuelle Lösung ist, dass ich eine statische Methode für die Formatierung ein Datum festgelegt haben, und ich nenne sie anstelle von ToString () über meine gesamte Code-Basis. Aber noch einmal, wenn ich so irgendwo im Code zu tun vergessen, ich werde wieder ein albernes Datum hat.

War es hilfreich?

Lösung 2

Einstellen der Kultur war keine Option, noch wurde je nach den regionalen Einstellungen des Servers.

ich am Ende eine Nutzenfunktion Schreiben Daten zur Formatierung:

Public Shared Function FormatShortDate(ByVal d As Date) As String
    If d=#1/1/0001# Then Return ""
    If d=#1/1/1900# Then Return ""
    'ISO/IEC 8824 date format
    Return d.ToString("yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture)
End Function

Das nenne ich überall, wo ich brauche ein Datum, um den Benutzer zu drücken. Es behandelt auch die Anzeige der Nichterfüllung ( "magic") stammt.

Ich schrieb einige ähnliche Funktionen für und FormatShortDateTime und FormatLongDateTime.

Andere Tipps

Sie können die Standardkultur an der web.config (Anwendungsebene), Page-Direktive oder Steuerrichtlinie festgelegt.

Ich habe verschiedene Anwendungen, wo die Masterseiten für verschiedene Kulturen eingerichtet sind, und die Seiten und Steuerelemente erben von dort.

Sie können das kurzes Datumsformat bearbeiten, indem Sie die Einstellung in den regionalen Einstellungen in der Systemsteuerung auf dem Server zu ändern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top