Extension methods

Extension methods cho phép bạn thêm các phương thức vào các kiểu dữ liệu hiện có mà không cần tạo một kiểu dẫn xuất mới, biên dịch lại hoặc sửa đổi kiểu gốc.

Extension methods khai báo static, nhưng chúng được gọi như instance methods

Extension method là phương thức static của lớp static, từ khóa this áp dụng cho tham số đầu tiên của  phương thức. Kiểu của tham số đầu sẽ được mở rộng phương thức đó.

public static class ExtensionMethodDemo
{
    public static string UppercaseFirstLetter(this string value)
    {
        // Uppercase the first letter in the string.
        if (value.Length > 0)
        {
            char[] array = value.ToCharArray();
            array[0] = char.ToUpper(array[0]);
            return new string(array);
        }
        return value;
    }
}

class Program
{
    static void Main()
    {
        // Use the string extension method on this value.
        string value = "hello world!";
        value = value.UppercaseFirstLetter();
        Console.WriteLine(value);
    }
}
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s