Skip to main content

Posts

Showing posts from October 3, 2023

Extension Methods

Extension methods allow developers to add new methods to existing types (classes, interfaces, structs) without modifying the original source code or creating a new derived type. A quick metaphor Imagine you've bought a new basic bicycle. It's nice, but wouldn't it be cool if you could add a basket without welding or making permanent changes? That's what Extension Methods in C# are like! So, what are Extension Methods?     They let you add new methods (or features) to existing classes (like our bicycle) without changing their original code. The Creation process Make a static method (a method that belongs to a class, not an object) inside a static class (a class that can't be instantiated). The first parameter of this method uses the this keyword and mentions the type (or class) you want to add a method to.  The Rules It must be defined in a static class. It must be a static method. The first parameter specifies the type you're extending, prefixed with the this ke