Validar la dirección de correo electrónico en C#

Muhammad Maisam Abbas 16 febrero 2024
  1. Validar la dirección de correo electrónico con la clase MailAddress en C#
  2. Valide la dirección de correo electrónico con la clase EmailAddressAttribute en C#
Validar la dirección de correo electrónico en C#

Este tutorial discutirá métodos para validar una dirección de correo electrónico en C#.

Validar la dirección de correo electrónico con la clase MailAddress en C#

Lo primero que nos viene a la mente cuando hablamos de comprobar formatos son las expresiones regulares. Pero las expresiones regulares son relativamente complejas y se requiere mucho tiempo para aprenderlas. Si ya conoce las expresiones regulares, entonces ese es el mejor enfoque para usted. Este tutorial utilizará algunos métodos predefinidos en lugar de cualquier enfoque definido por el usuario para validar direcciones de correo electrónico en C#. La clase MailAddress se utiliza para representar una dirección de correo electrónico en C#. El constructor de la clase MailAddress toma una cadena y la formatea en una dirección de correo electrónico. Podemos usar la clase MailAddress para determinar si una dirección de correo electrónico determinada es válida o no. El siguiente ejemplo de código nos muestra cómo podemos validar una dirección de correo electrónico con la clase MailAddress en C#.

using System;

namespace email_validation {
  class Program {
    static bool IsValidEmail(string email) {
      try {
        var addr = new System.Net.Mail.MailAddress(email);
        return addr.Address == email;
      } catch {
        return false;
      }
    }
    static void Main(string[] args) {
      bool isOk = IsValidEmail("mma @gma.com");
      Console.WriteLine(isOk);
    }
  }
}

Producción :

false

Definimos la función IsValidEmail(email) que toma una dirección de correo electrónico como una cadena y devuelve true si el correo electrónico es válido y falso si el correo electrónico es inválido. Usamos el constructor de la clase MailAddress dentro del espacio de nombres System.Net.Mail para crear una nueva instancia de la clase MailAddress. Luego comparamos la propiedad Address de la clase MailAddress con nuestra dirección de correo electrónico. Si la Dirección coincide con el correo electrónico, el correo electrónico es válido. Si la Address no coincide con el correo electrónico o se produce una excepción durante el proceso, el correo electrónico es inválido.

Valide la dirección de correo electrónico con la clase EmailAddressAttribute en C#

La clase EmailAddressAttribute se utiliza para validar una dirección de correo electrónico en C#. La función IsValid(email) de la clase EmailAddressAttribute devuelve true si el email es válido o nulo y false si el email no es válido. El siguiente ejemplo de código nos muestra cómo determinar si una dirección de correo electrónico es válida o inválida con la clase EmailAddressAttribute en C#.

using System;
using System.ComponentModel.DataAnnotations;

namespace email_validation {
  class Program {
    static bool validateEmail(string email) {
      if (email == null) {
        return false;
      }
      if (new EmailAddressAttribute().IsValid(email)) {
        return true;
      } else {
        return false;
      }
    }
    static void Main(string[] args) {
      bool isOk = validateEmail("mma@gma.com");
      Console.WriteLine(isOk);
    }
  }
}

Producción :

true

Creamos la función validateEmail() que toma una dirección de correo electrónico como un parámetro de cadena y devuelve true si el correo electrónico es válido y devuelve false si no es válido. La función validateEmail() primero devuelve false si el email es null. Creamos una nueva instancia de la clase EmailAddressAttribute y pasamos nuestro email como parámetro a la función IsValid() de la clase EmailAddressAttribute.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Csharp String