Bazı eski veri tabanlarında karşılaşmışınızdır, tarih ve saati int olarak tutulur . ve : lardan temizlenerek. Fakat web tarafında int değerleri formatlamak isteyebiliriz, gün adı vs göstermek için. Formatlamak için öncelikle verileri çevirmemiz gerekmektedir. tarihi DateTime zamanı ise TimeSpan’a çevirmeliyiz.Hemen örnek üzerinde görelim;
VeriTabanımızda int olarak tarih verimiz 20130214, saat olarak ise 163000 tutulduğunu farzedelim. Şimdi bu integer değerleri çevirecek olan methodlarımıza göz atalım.
//Tarih oluşturma methodumuz private static DateTime DateCreate(string sdt) { int year = Convert.ToInt32(sdt.Substring(0, 4)); int month = Convert.ToInt32(sdt.Substring(4, 2)); int day = Convert.ToInt32(sdt.Substring(6, 2)); DateTime dt = new DateTime(year, month, day); return dt; } //Saat oluşturma methodumuz private static TimeSpan TimeCreate(string sts) { int hour = Convert.ToInt32(sts.Substring(0, 2)); int munites = Convert.ToInt32(sts.Substring(2, 2)); int seconds = Convert.ToInt32(sts.Substring(4, 2)); return new TimeSpan(hour, munites, seconds); } //Tarih ile saati oluşturma methodumuz private static DateTime DateTimeCreate(string sdt, TimeSpan sts) { int year = Convert.ToInt32(sdt.Substring(0, 4)); int month = Convert.ToInt32(sdt.Substring(4, 2)); int day = Convert.ToInt32(sdt.Substring(6, 2)); DateTime date = new DateTime(year, month, day); return date.Add(sts); } //Methodların kullanımı; DateTime dt = DateTime(20130214); TimeSpan ts = TimeCreate(163000)
Hepsi bu kadar…