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



Will you give this article a +1 ? Thanks in advance

About The Author

Suprotim Agarwal
Suprotim Agarwal, ASP.NET Architecture MVP (Microsoft Most Valuable Professional) works as an Architect Consultant and provides consultancy on how to design and develop Web applications.

Suprotim is also the founder and primary contributor to DevCurry, DotNetCurry and SQLServerCurry. He is the Editor of a Developer Magazine called DNC Magazine. He has also written two EBooks 51 Recipes using jQuery with ASP.NET Controls. and The Absolutely Awesome jQuery CookBook

Follow him on twitter @suprotimagarwal

No comments: