22 Ekim 2015 Perşembe

C# Extension Metot Kullanımı

Bu yazımda Extension metotlardan bahsedeceğim. Kısacası mevcut sınıflara ek yöntemler eklemenizi sağlar. Mesela string sınıfına gelen inputdaki "." ve boşluk işlemlerini silen  ve sonuna ekleme yapabilen bir işlem yazabilirsiniz ve bunu tüm stringlere uygulayabilirsiniz.

Sözün kısası makbul hemen uygulamaya geçelim. Genelde projelerde extensionlar için bir klasör açıp onun içinde tanımlarlar bende öyle başlayacağım. İçinede extensionlarımı yazmak için bir class ekliyorum.

Burada kilit nokta classınız static olmak zorundadır. Tabi bu class'ın içine yazacağımız metotlar da static olacak.

Örnek olarak WinForm'da girilen bir text'i istediğimiz gibi değiştirelim. Kodumuz text'in sonundaki boşluğu temizlesin, içindeki "." karakterlerini boşluk yapsın ve sonuna "_burakkaratatar" eklesin :)

Metodumuzun parametresinde this keyword'u bu metodun etkileyeceği değer tipini veya sınıfını belirtmektedir. Bu parametre bizim değerimizi alacak. Örneğin ben bunu değeri "burak" olan bir stringde kullanmak istersem text parametresinin değeri "burak" olacak.

c# extension method

Metodumuzu yazdıktan sonra forma bir adet textbox, bir adet button ve bir adet label ekleyelim. Textboxtan girilen ifade butona basılınca düzenlensin ve label'ımıza yazılsın.

c# extension method
Şimdi de button_click event'imizi yazalım.

c# extension method
Evet yazdığımız extension geldi. Tabi burada extensionımızın bulunduğu kütüphaneyi de yukarıda gördüğünüz gibi ekledik. Şimdi de sonucu görelim.

c# extension method

Görüldüğü gibi başarılı bir şekilde çalışıyor. Sizde kendi extensionlarınızı yazarak projelerinizde kendinize kolaylık sağlayabilirsiniz.

1 yorum: