17 Eki 2009 C# 3.0 Extension Metotlar Kategori: Yazılım Etiketler: C# 3.0C# 0 Yorum Extension metotlar C# 3.0'ın en beğendiğim özelliklerinden birisi. Extension Metot, varolan bir tipin nesne örnekleri üzerinden, o sınıfta yer almayan bir metodu çağırmamızı sağlar. Örneğin string bir metinin içerisindeki değerin numerik olup olmadığını kontrol etmek istediğimizde string bir parametre alan ve bu parametreyi kontrol eden bir metot yazar ve kullanmak istediğimiz zaman metodu çağırarak kullanırdık. C# 3.0 ile birlikte aynı işlemi yazacağımız extension metot ile sanki o tipin bir metoduymuş gibi çağırıp kullanabiliyoruz. Burada önemli bir nokra var. Extension metodun ve yer aldığı sınıfın static olması gerekiyor. Ayrıca extension metotların aldığı ilk parametre özel bir parametredir ve hangi sınıfın nesne örneklerine ekleneceği bu parametre ile bildirilir.class Program{ // C# 3.0 öncesinde metot yaparak o metoda paremetreyi gönderiyoruz. public static bool isNumeric(string sayi) { try { Convert.ToDouble(sayi); return true; } catch { return false; } } static void Main(string[] args) { stringsayi = "10"; // C# 3.0 Öncesi, hazırladığımız metodu çağırıyoruz. // bool sonuc = isNumeric(sayi); // C# 3.0 ile birlikte nesne örneği üzerinden hazırladığımız metodu çağırıyoruz. bool sonuc = sayi.isNumeric(); }}//Extension metotlar tanımlarken extension metotların içinde bulunduğu class'ın static class olması gerekir.static class ExtensionMethods{ //Extension metotların ilk paremetresi özel bir parametredir ve hangi sınıfın nesne örneklerine ekleneceğini bildirir. public static bool isNumeric(this string sayi) { try { Convert.ToDouble(sayi); return true; } catch { return false; } }} Yorum (0) Bu yazıya henüz yorum yapılmamış... Yorum Yaz * Ad Soyad: * Email: * Message: