Пример #1
0
        /// <summary>
        /// Determines whether the specified email address is valid.
        /// </summary>
        /// <param name="emailAddress">The email address.</param>
        /// <param name="semanticValidationMode">The semantic validation mode.</param>
        /// <returns>
        ///     <c>true</c> if the specified email address is valid; otherwise, <c>false</c>.
        /// </returns>
        public static bool IsValid(string emailAddress, MailSemanticValidationMode semanticValidationMode)
        {
            if (semanticValidationMode == MailSemanticValidationMode.None)
            {
                return(true);
            }

            Match match = emailParser.Match(emailAddress);

            if (!match.Success)
            {
                return(false);
            }

            string server = match.Groups["server"].Value;

            switch (semanticValidationMode)
            {
            case MailSemanticValidationMode.DnsLookup:
                return(emailDNSLookup(server));

            case MailSemanticValidationMode.ServerLookup:
                return(emailServerLookup(server));

            case MailSemanticValidationMode.UserLookup:
                return(emailUserLookup(server, emailAddress));

            default:
                throw new NotImplementedException(
                          string.Format(
                              CultureInfo.InvariantCulture,
                              "Validation Mode {0} is not implemented.",
                              semanticValidationMode
                              )
                          );
            }
        }
Пример #2
0
		/// <summary>
		/// Determines whether the specified email address is valid.
		/// </summary>
		/// <param name="emailAddress">The email address.</param>
		/// <param name="semanticValidationMode">The semantic validation mode.</param>
		/// <returns>
		/// 	<c>true</c> if the specified email address is valid; otherwise, <c>false</c>.
		/// </returns>
		public static bool IsValid(string emailAddress, MailSemanticValidationMode semanticValidationMode)
		{
			if (semanticValidationMode == MailSemanticValidationMode.None)
			{
				return true;
			}

			Match match = emailParser.Match(emailAddress);
			if (!match.Success)
			{
				return false;
			}

			string server = match.Groups["server"].Value;

			switch (semanticValidationMode)
			{
				case MailSemanticValidationMode.DnsLookup:
					return emailDNSLookup(server);

				case MailSemanticValidationMode.ServerLookup:
					return emailServerLookup(server);

				case MailSemanticValidationMode.UserLookup:
					return emailUserLookup(server, emailAddress);

				default:
					throw new NotImplementedException(
						string.Format(
							CultureInfo.InvariantCulture,
							"Validation Mode {0} is not implemented.",
							semanticValidationMode
						)
					);
			}
		}
Пример #3
0
		/// <summary>
		/// Determines whether the specified email address is valid.
		/// </summary>
		/// <param name="emailAddress">The email address.</param>
		/// <param name="syntaxValidationMode">The syntax validation mode.</param>
		/// <param name="semanticValidationMode">The semantic validation mode.</param>
		/// <returns>
		/// 	<c>true</c> if the specified email address is valid; otherwise, <c>false</c>.
		/// </returns>
		public static bool IsValid(string emailAddress, MailSyntaxValidationMode syntaxValidationMode, MailSemanticValidationMode semanticValidationMode)
		{
			return
				IsValid(emailAddress, syntaxValidationMode) &&
				IsValid(emailAddress, semanticValidationMode);
		}
Пример #4
0
 /// <summary>
 /// Determines whether the specified email address is valid.
 /// </summary>
 /// <param name="emailAddress">The email address.</param>
 /// <param name="syntaxValidationMode">The syntax validation mode.</param>
 /// <param name="semanticValidationMode">The semantic validation mode.</param>
 /// <returns>
 ///     <c>true</c> if the specified email address is valid; otherwise, <c>false</c>.
 /// </returns>
 public static bool IsValid(string emailAddress, MailSyntaxValidationMode syntaxValidationMode, MailSemanticValidationMode semanticValidationMode)
 {
     return
         (IsValid(emailAddress, syntaxValidationMode) &&
          IsValid(emailAddress, semanticValidationMode));
 }