Şu anki tarih saat biçimini C # 'dan kaydetmeye ve bunu bir SQL Server tarih biçimine dönüştürmeye çalışıyorum, böylece yyyy-MM-dd HH:mm:ssonu UPDATEsorgum için kullanabilirim .
Bu benim ilk kodumdu:
DateTime myDateTime = DateTime.Now;
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd HH:mm:ss");
Tarihte çıktı yeterli, ancak saat her zaman "12:00:00" olduğundan kodumu şu şekilde değiştirdim:
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " +
myDateTime.TimeOfDay.ToString("HH:mm:ss");
Bana şu derleme hatasını verdi:
FormatException işlenmedi
Ve ayrıştırmam gerektiğini önerdi. Bu yüzden StackOverflow'daki araştırmama göre bunu koduma yapmayı denedim:
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " +
myDateTime.Parse.TimeOfDay.ToString("HH:mm:ss");
veya
string sqlFormattedDate = myDateTime.Date.ToString("yyyy-MM-dd") + " " +
myDateTime.tryParse.TimeOfDay.ToString("HH:mm:ss");
Ama bana bunun verilen bağlam için geçerli olmayan bir yöntem olduğunu söylüyor. Sorunuma çözüm aramaya çalıştım ve iki saattir takılı kaldım. C # konusunda hala biraz yeniyim, lütfen bana yardım edebilir misin?
DateTimeveya bir dizge olarak depoluyorsunuz? Ayrıca ToStringaçık Date, zamanın her zaman olduğu anlamına gelir12:00:00
DATETIMEve daha sonra tüm bunları bir dizgi temsiline ve temsilinden ileri geri dönüştürme yapmaktan kaçınabilirsiniz!
datetimeiyi bir başlangıç olabilir. Daha da iyisi, sunucuyu neden geçerli saati geçiriyorsunuz - GETDATE()tamamen sunucu tarafında çağrılabilen bir işlevi vardır.