Programcılık üzerine yazmaya yıllar önce bilgisayar dergilerinde makaleler yazmakla başladığımı birçoklarınız biliyor. Buna rağmen kısa bir özet yapayım. Bilgisayar dergilerinde çok sayıda makale yazdıktan sonra 1994 yılından itibaren kitap yazmaya başladım. Bu kitapların sayısı fazlaşınca itirazlar yükselmeye başladı. Çok yazmamın nedeninin çeviri yapmak olduğuna hükmettiler. Hal bu ki çeviri yapacak kadar İngilizcem hiç bir zaman olmadı. Ki doğrusu çeviriyi İngilizcesi iyi olup programcılık bilmeyenler yapar. Bende ise tersi olduğuna göre neden çeviri yapacaktım? Neyse..
Son 3-4 yıldır çok sayıda makale yazıp kişisel sitemde yayınlamaya başladım. Bu makalelerin sayısının oldukça arttığını makaleleri memikyanik.com'dan memikyanik.net'e taşırken fark ettim. Günlerdir bu makaleleri memikyanik.net'e taşımakla uğraşıyorum.
Sonra gelen teklifler üzerine bu makalelerin bazılarını başka sitelere de vermeye başladım. Dolayısıyla makale verdiğim birkaç sitede yazarının Memik Yanık olduğu makalelerden geçilmez oldu. Bunu gören bazı arkadaşlar itiraz etmeye başladılar. Madem bu makaleler ilgi görüyor bu arkadaşlar kusura bakmasınlar makale yazmaya devam edeceğim.
Konu: return ile çıkabilirsiniz..
Yazdığın kodda bir anormallik yok. Hataya meyilli kısmı Try bloğuna, hata meydana geldiğinde yapılacak işlemi temsil eden satırları ise catch bloğuna yazmışsın. Dolayısıyla hata meydana gelirse try bloğunda kalan satırlar(varsa) işletilmeyi catch bloğuna atlanılır. Tabii Catch bloğundaki satırların işletilmesi tamamlandığında ister istemez sıra bloktan sonraki satırlar(varsa) gelir. Eğer hata meydana geldiğinde try bloğundan sonraki satırları işletilmesini istemiyorsan return deyimiyle metottan çıkabilirsiniz.
private void button1_Click(object sender, EventArgs e)
{
secilmis();
}
private void secilmis()
{
try
{
this.Text= comboBox1.SelectedItem.ToString();
}
catch (NullReferenceException hata)
{
//Hata varsa bunu yapsın
MessageBox.Show("HAta meydana geldi");
return;
}
MessageBox.Show("işleme devam");
}
Bağlantı »
Konu: Hata mesajı
Merhaba,
Benim sormak istediğim bir soru var ben bi hata yakalama ekranı yapıyorum ama hata varsa benim yapmasını istemediğim kısmı yapıyor.
Yani şöyle Örnekle göstereyim
private void secilmis()
{
try
{
this.asd = ComboBox.SelectedItem.ToString();
}
catch (NullReferenceException)
{
//Hata varsa bunu yapsın
MessageBox.Show("HAta meydana geldi");
}
//Hata yoksa burdan devam etsin
}
Şeklinde istiyorum fakat hata olsada olmasada "//Hata yoksa burdan devam etsin" kısmından devam ediyor.
exception kısmına throw; ekledğim zamanda sitemin ürettiği hata mesajını yinede gösteriyor yani ben hata varsa sadece benim yazdığım hata mesajını göstermesini istiyorum eğer hata yoksa da normal devam etmesini istiyorum.
Not: yaptığım işlem combobox dan gelen verinin boş veya dolu olduğunu kontrol etmeye çalışmak.
Yardımcı olabilirseniz sevinirim
Bağlantı »