Aus irgendeinem Grund, ASP.NET-Code auf meinem Server kehrt nun ein Format von dd/MM/yyyy statt MM/tt/ wenn ich Datetime verwenden .ToString ("g").ändern ASP.NET Standardkultur für Datumsformatierung
Anstatt alle "g" Formatzeichenfolgen durch eine konkrete Formatzeichenfolge oder ein CultureInfo-Argument zu ersetzen, gibt es eine Möglichkeit, das Standardformat für kurze Daten in der gesamten Anwendung zu überschreiben.
Meine Präferenz ist eigentlich "JJJJ-MM-TT" als Standardformat, aber ich kann mit dem US-zentrischen MM/TT/JJJJ leben, wie alle Benutzer in den USA sind.
Klarstellung: Ich möchte nicht die gesamte Standardkultur ändern, was sich auf Dinge wie Währung und die Verwendung von Dezimalzahlen/Kommata bei der Formatierung von Zahlen auswirken könnte.
Ich möchte nur alle ToString ("g") aufrufen, um das ISO/IEC 8824-Datumsformat ("JJJJ-MM-TT") zu verwenden.
Ich konnte in meinem Code suchen und ersetzen, um eine CultureInfo in jedem ToString() -Aufruf zu erzwingen, aber das erscheint mir nicht als die wartungsfreundlichste Lösung.
Meine aktuelle Lösung ist, dass ich eine statische Methode zum Formatieren eines Datums definiert habe, und ich rufe es anstelle von ToString() über meine gesamte Codebasis. Aber wenn ich das irgendwo im Code vergessen habe, werde ich wieder ein doof Date haben.
Die Antwort in der folgenden URL scheint passender zu sein als das Schreiben einer benutzerdefinierten Funktion: http://stackoverflow.com/questions/5505647/different-datetimeformat-for-the-same-culture-in-different-machines. Es ersetzt einfach das Kurzzeitmuster der aktuellen Kultur. Immer noch nicht das Ideal. – Feyyaz