Null checking C# with Example
Extension methods are static methods which behave like instance methods. However, unlike what happens when calling an instance method on a null reference, when an extension method is called with a null reference, it does not throw a NullReferenceException. This can be quite useful in some scenarios. For example, consider the following static class: public static class StringExtensions { public static string EmptyIfNull(this string text) { return text ?? String.Empty; } public static string NullIfEmpty(this string text) { return String.Empty == text ? null : text; } } string nullString = null; string emptyString = nullString.EmptyIfNull();// will return "" string anotherNullString = emptyString.NullIfEmpty(); // will return null Live Demo on .NET Fiddle