Chain Extension Methods in .NET

Extension methods enable you to add methods to existing types without creating a new derived type, recompiling, or otherwise modifying the original type. You can even chain Extension Methods.

Here’s an example:

class Program
{
static void Main(string[] args)
{
decimal num = 233.53468M;
// chaining extension methods
decimal result = num.DoSquare().DoRound();
Console.WriteLine(result);
Console.ReadLine();
}
}



public static class MathEasy
{
public static decimal DoSquare(this decimal i) {
// square a number
return i * i;
}
public static decimal DoRound(this decimal d) {
// Round to three decimal places
return Math.Round(d, 3);
}
}


As you can see, we are chaining extension methods

decimal result = num.DoSquare().DoRound();


OUTPUT

image






About The Author

Suprotim Agarwal
Suprotim Agarwal, Developer Technologies MVP (Microsoft Most Valuable Professional) is the founder and contributor for DevCurry, DotNetCurry and SQLServerCurry. He is the Chief Editor of a Developer Magazine called DNC Magazine. He has also authored two Books - 51 Recipes using jQuery with ASP.NET Controls. and The Absolutely Awesome jQuery CookBook.

Follow him on twitter @suprotimagarwal.

No comments: