Merhaba arkadaşlar,
yorumlarda, bloglarda, haberlerde genelde görmüşsünüzdür. 3 saat önce yazıldı. 20 dk önce girildi, 45 gün önce eklendi gibi örnekler.
Bunlar vt nizde tuttuğunuz DateTime formatının çevrilmiş hali olarak çıkmaktadır.
aşağıdaki kodu ister class olarak ekler isterseniz kullandığınız yere fonksiyon olarak kullanabilirsiniz.
private static string YazimTarihiGetir(DateTime TarihSaat)
{
TimeSpan ts = DateTime.Now - TarihSaat;
double second = Math.Truncate(ts.TotalSeconds);
double minute = Math.Truncate(ts.TotalMinutes);
double hour = Math.Truncate(ts.TotalHours);
double day = Math.Truncate(ts.TotalDays);
double month = Math.Truncate(ts.TotalDays / 30);
double year = Math.Truncate(month / 12);
string yazilanZaman = string.Empty;
if (second < 60)
yazilanZaman = second + " saniye ";
else if ((minute > 0) && (minute < 60))
yazilanZaman = minute + " dakika ";
else if ((hour > 0) && (hour < 24))
yazilanZaman = hour + " saat ";
else if ((day >= 1) && (day < 30))
yazilanZaman = day + " gün ";
else if (month >= 1)
yazilanZaman = month + " ay ";
else if (year >= 1)
yazilanZaman = year + " yıl ";
return string.Format("{0} ", yazilanZaman);
}
Kod bloğunu ekledikten sonra tek yapmanız gereken
YazimTarihiGetir(dr.Tarih) // dr.Tarih benim vt den gelen tarih formatım
// örnek : 2018-08-08 14:29:24.520
sonuç:
25 dakika önce yazıldı
şeklinde..
iyi çalışmalar.