C# Tarih hesaplaması nasıl yapılır?

notify (538) 8 yıl önce sordu

Merhabalar,

Benim amacım şu, örnek olarak c#'da lable1.text'de  23.01.2016 diye bir tarih var sayalım, bu tarihin 7 gün önceki tarihini hesaplamam gerekiyor bunu nasıl yapabilirim? Ve birde ek olarak benim bu tarihi sql veritabanıma kaydetmek gerekiyor bilgisi olan varsa ve yardımcı olursa sevinirim.

Toplam 1 cevap


alattin (17127) 8 yıl önce cevapladı

Herhangi bir tarihten x gün önceki tarihe geri dönebilmek için, tarihe eksi değer eklemelisin.

Label kontrolü içinden değer string olarak gelecektir. Öncelike bunu tarihe çevirmelisin. Sonra AddDays metodu ile istediğin işlemi yapabilirsin. 
 

int gun = -1 * Int32.Parse(Textbox1.Text);
string labelTarih = Label1.Text; 
var tarih = DateTime.Parse(labelTarih).AddDays(gun);
Label2.Text = tarih.ToString();

Burada -7 değeri ekleyerek 7 gün önceki tarihi alabilirsin.

SQL'e kayıt için Entity Framework ile ilgili Google'da arama yapabilirsin. Entity Framework işini oldukça kolaylaştıracaktır.

notify 8 yıl önce

Bunu tam olarak nasıl yapıcam ? boş bir form var ve bir adet label bunu nasıl yapıcağımı birazdaha detaylandırabilirmisiniz? kısaca rica etsem

alattin 8 yıl önce

yukarıda yazdığım kod, label1'den text'i alır ve tarihe çevirir, sonrada 7 gün geriye gidip tarih adlı değişkene bu veriyi aktarır. Entity Framework konusu oldukça kapsamlı.

notify 8 yıl önce

Çok özür dilerim ama bu tarih adlı değişkeni nasıl form'a eklicem yani yeni tarihi başka bir label'da mı göstericem nasıl olucak lütfen yardım edin cevabınıza tik atıcam

alattin 8 yıl önce

Form üzerine 2. bir label sürükleyin. Daha sonra butonun Click olayına yukarıdaki kodu yapıştırın.

notify 8 yıl önce

Çok teşekkürler çalıştı, birde bu 7 gün olayını texbox'a girdirebilirmiyiz? yani texbox'a kaç yazarsak ona göre gün hesaplaması yapıcak 5 yazarsak 5 gün öncesi gibi

alattin 8 yıl önce

Elbette yapabilirsin. Cevabımı bu isteğine göre düzenliyorum.

notify 8 yıl önce

ÇOK SAĞOLUN ALATTİN BEY SAĞLICAKLA KALIN

notify 8 yıl önce

ALAATİN BEY KUSURA BAKMAYIN ŞİMDİ EVE GELEBİLDİM. BİR SORUM DAHA OLUCAKTI BU GİRDİĞİMİZ KOD SAATİ DE GÖSTERİYOR YANİ 00:00:00 DİYE BUNU NASIL KALDIRABİLİRİM? SADECE TARİH OLMASI GEREKİYOR

alattin 8 yıl önce

tarih.ToShortDateString() yazarsan sorun çözülür.