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();

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();



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: