Ich versuche, das aktuelle Datums- / Uhrzeitformat aus C # zu speichern und es in ein SQL Server-Datumsformat wie dieses zu konvertieren, yyyy-MM-dd HH:mm:ssdamit ich es für meine UPDATEAbfrage verwenden kann.
Dies war mein erster Code:
DateTime myDateTime = DateTime.Now;
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd HH:mm:ss");
Die Ausgabe am Datum ist in Ordnung, aber die Uhrzeit ist immer "12:00:00", daher habe ich meinen Code wie folgt geändert:
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " +
myDateTime.TimeOfDay.ToString("HH:mm:ss");
Es gab mir diesen Kompilierungsfehler:
FormatException wurde nicht behandelt
Und schlug vor, ich muss analysieren. Also habe ich versucht, dies mit meinem Code gemäß meiner Recherche hier in StackOverflow zu tun:
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " +
myDateTime.Parse.TimeOfDay.ToString("HH:mm:ss");
oder
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " +
myDateTime.tryParse.TimeOfDay.ToString("HH:mm:ss");
Aber es sagt mir, dass es eine Methode ist, die für einen bestimmten Kontext nicht gültig ist. Ich habe versucht, nach Lösungen für mein Problem zu suchen, und bin jetzt seit zwei Stunden festgefahren. Ich bin noch ein bisschen neu in C #. Kannst du mir bitte helfen?
DateTimeoder speichern Sie ihn als Zeichenfolge? Auch ToStringauf Datewürde bedeuten, dass die Zeit immer ist12:00:00
DATETIMEund dann könnten Sie vermeiden, all diese Konvertierungen hin und her zu und von einer Zeichenfolgendarstellung durchzuführen!
datetimewäre es ein guter Anfang , Parameter zu verwenden und einfach alles als zu behalten . Noch besser, warum übergeben Sie den Server zur aktuellen Zeit - er hat eine GETDATE()Funktion, die vollständig auf der Serverseite aufgerufen werden kann.