C# Extension Methods Example

By
Advertisement
In this article i am going to explain about Extension Methods  with example.

Extension methods enable you to "add" methods to existing types without creating a new derived type, recompiling, or otherwise modifying the original type. Extension methods are a special kind of static method, but they are called as if they were instance methods on the extended type. For client code written in C# and Visual Basic, there is no apparent difference between calling an extension method and the methods that are actually defined in a type.

If you do implement extension methods for a given type, remember the following points:

An extension method will never be called if it has the same signature as a method defined in the type.

Extension methods are brought into scope at the namespace level. For example, if you have multiple static classes that contain extension methods in a single namespace named Extensions, they will all be brought into scope by the using Extensions; directive.

Below is the code used. I have created a class file inside app_code named ExtesionMethods.cs and created a class named MyExtensionMethods and inside i have created two static methods named In and ToHexadecimal.

using System;
using System.Collections.Generic;
using System.Web;

public class ExtensionMethods
{
    public static class MyExtensionMethods
    {
        public static bool In(this string value, params string[] stringValues)
        {
            foreach (string otherValue in stringValues)
                if (string.Compare(value, otherValue) == 0)
                    return true;

            return false;
        }
        public static string ToHexadecimal(this int i)
        {
            return String.Format("0x{0:X}", i);
        }
    }
}


Below is the usage of the extension methods.

int i = 100;
Console.WriteLine("Hexadecimal Value of " + i.ToString() + " is " + i.ToHexadecimal());
Console.ReadLine();
var result = "CoreSystem".In("CoreSystem", "Library");


So whenever i like to apply in condition in string then i will include the namespace in my page and can call this extension method.

If you face any issue in the implementation then add it in comments. I ll help you to solve

0 comments:

Post a Comment

Online Casino