Extension Methods Arşivi

Merhaba arkadaşlar Extension Method lar ile c# 3.0 hayatımızı dahada kulaylaştırdı.ufak bir örnek ile ne olduğunu size anlatmak istiyorum.

Code:
// Eski zahmetli kullanım      
string i = "0";
int z = Convert.ToInt32(i);

//Extension Method kullandigimizda kisalan islem
z = i.intCevir();

Örnek kullanım

Code:
public static class ExtensionManager
{
     public static int intCevir(this string Text)
    {
        return Convert.ToInt32(Text);
    }
}

görüldüğü gibi işlemimizi çok kısalttik ve bunu bütün veri türkleri ve kendi oluşturduğumuz nesnelerde yapabiliriz.

 Extension Methods Arşivim

String to Int değer dönüştürücü

Code:
    public static int intCevir(this string Text)
    {
        return Convert.ToInt32(Text);
    }

Asp.net DropDownList içindeki bir Value değerini seçtirmek için yani SelectedValue

Code:
 public static Boolean DropdownlistValueSec(this DropDownList dropDownList, String selectedValue)
    {


        ListItem selectedListItem = dropDownList.Items.FindByValue(selectedValue);


        if (selectedListItem != null)
        {
            selectedListItem.Selected = true;
            return true;
        }
        else
            return false;
    }

C# ile bir captcha uygulaması yazıyordum sonra verdiğim bir uzunlukta ama sadece belirlediğim karakterleri içerek bir sayı dizisi olması gerekiyordu.İşte size o Ext


Code:
  public static string ramdomsifrever(this int intim)
    {

        //5839 sayılarını içeren şifreler oluşturur
        char[] cr = "5839".ToCharArray();
        string result = string.Empty;
        Random r = new Random();
        for (int i = 0; i < intim; i++)
        {
            result += cr[r.Next(0, cr.Length - 1)].ToString();
        }
        return result;



    }

Kullanımı
Code:
MessageBox.Show(5.ramdomsifrever());

Decimal bir parasal değerin size sadece kuruş kısımlarımı lazım sadece son iki hanesinimi almak istiyorsunuz işte size decimal kuruş kısmını veren metod.
 
Code:
    public static string DecimalKurus(this decimal deciMAL)
    {
        return deciMAL.ToString("N").Split(',')[1];
    }

Decimal değerimizin virgülden önceki kısmını almak için ise aşağıdaki metodumuzu kullanabilirsiniz.
Code:
  public static string DecimalVirguldenOnce(this decimal deciMAL)
    {
        return deciMAL.ToString("N").Split(',')[0].Replace(".", "");
    }

Hiç yorum yok:

Yorum Gönder