Métodos de extensão C #

Estenda classes nativas ou suas próprias classes para oferecer suporte a novos métodos de ação.

Por exemplo, vamos estender a classe String para verificar se seu valor é um e-mail válido:


public static class StringExtensions
{

public static bool IsValidEmail(this string email)
{
Regex regex = new Regex(@"^[A-Za-z0-9](([_.-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([.-]?[a-zA-Z0-9]+)*).([A-Za-z]{2,})$");
return regex.IsMatch(email);
}

}

Agora você deve usá-lo desta forma:


string email = "john@email.com";
if (email.IsValidEmail())
{
// ... performs some action
}

Se você quiser mais sobre: https://www.google.com/?q=extension+methods+c%23

🙂