

There are 10 types of people in the world, those who understand binary codes and those who dont


Console.ReadLine();Console.WriteLine("İşlem Sonucu = " + Islem(1, 2));
İşlemimizin sonucu 3 gelecektir.Ancak biz c parametresini kendimiz de verebiliriz.
Console.WriteLine("İşlem Sonucu = " + Islem(1, 2,3));
İşlemimizin sonucu 5 gelecektir.Yeni bir metot yazmadan bir farklı metotlar elde etmiş olduk.Şimdi 2 tane opsiyonel parametre kullanımına bir göz atalım.
public static double Islem(int a, int b = 2 , int c = 1 )
İstediğimiz kadar opsiyonel parametre kullanabiliriz ancak dikkat ettiğiniz gibi opsiyonel parametreler metodumuzun parametreleri arasında hep en sonda olmak zorundadır.
Örnek olarak bir kullanım görelim;
Console.WriteLine("İşlem Sonucu = " + Islem(1,c : 2));
Gördüğünüz gibi opsiyonel parametreleri sıralı olarak vermek zorunda değiliz.Burada b parametresi bizim atadığımız default değeri alırken c parametresini 2 olarak atamış olduk
Opsiyonel parametreleri kısaca anlatmaya çalıştım.Bir çok kolaylık sağladığını ve sağlayacağına emin olabilirsiniz.Sizi kod kalabalığından kurtaracaktır.
Herkese kolay gelsin :)
13 public string adres { get; set; }
//Öncelikle RSS'imizi alacağımız adresi tanımlayalım
14 rotected void Page_Load(object sender, EventArgs e)
15{
1if (!String.IsNullOrEmpty(adres))
//En basitinden adresin valid ya da null olup olmadığını kontrol edelim.Çok çeşitli hatalar alabiliriz ama şimdilik bu kontrol bize yeterli olacaktır.
17 {
18 try
19 {
20 XElement xelement = XElement.Load(adres);
//XElement XML elementini temsil eder.Linq ile sorgulayacağımız RSS'teki XML nesnelerini bu elemente alacağız.
21
22 var items = from i in xelement.Element("channel").Elements("item")
//Burada XML nesnemizin içine giriyoruz.
Benim bu uygulamamda kullandığım RSS http://umutluoglu.com/syndication.axd adresindeki XML nesneleri olacak.Bu adrese girip sayfaya sağ tıkladığınızda XML dosyasında XML yapısını görebilirsiniz.
23 select new
24 {
25 Title = i.Element("title").Value,
26 PubDate = Convert.ToDateTime(i.Element("pubDate").Value),
27 Description = i.Element("description").Value,
28 Link = i.Element("link").Value
29
30 };
//XML nesnesinin özelliklerine görüdüğünüz gibi i.Element("propertiadi") olarak erişebiliyorum.
Sorgumdan geri dönen XML nesnelerimi bir foreach döngüsüne sokarak istediğim işlemi yapabilirim.Ben geri dönen nesnelerimi bir hyperlink olarak göstericem böylece ilgili adresteki RSS lere link referansı vermiş olacağım.
31 foreach (var item in items)
32 {
33 HyperLink hlink = new HyperLink();
34 hlink.Text = item.Title;
35 hlink.NavigateUrl = item.Link;
36 hlink.ToolTip = item.Description;
37 Controls.Add(hlink);
38 Controls.Add(new LiteralControl("<br/>"));
39
40 }
41 }
42 catch (Exception ex)
43 {
44 Label label = new Label();
45 label.Text = ex.Message;
46 Controls.Add(label);
47 }
48 }
49 }