Я отправляю электронное письмо с помощью smtp-сервисов в моем приложении windows C#. Я должен выполнить лучший способ уменьшить показатель отказов по электронной почте. Я должен проверить, что указанный адрес электронной почты действителен или нет. Я использую код.Проверка Действительный адрес электронной почты в C#
private void btnCheckValid_Click(object sender, EventArgs e)
{
if (isRealDomain(textBox1.Text.Trim()) == true)
MessageBox.Show("Valid Email Address!");
}
private bool isRealDomain(string inputEmail)
{
bool isReal = false;
try
{
string[] host = (inputEmail.Split('@'));
string hostname = host[1];
IPHostEntry IPhst = Dns.GetHostEntry(hostname);
IPEndPoint endPt = new IPEndPoint(IPhst.AddressList[0], 25);
Socket s = new Socket(endPt.AddressFamily,
SocketType.Stream, ProtocolType.Tcp);
s.Connect(endPt);
s.Close();
isReal = true;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
isReal = false;
}
return isReal;
}
Проверяя реальный домен, я могу определить Hosted IP, но адрес электронной почты создается на хосте или нет.
с регулярным выражением (регулярное выражение) Я могу использовать только формат.
Итак, мой вопрос заключается в том, как найти только действительный адрес любого домена в C#.
Проверка адресов была задана так много раз, просто Google немного, например. http://stackoverflow.com/questions/16167983/best-regular-expression-for-email-validation-in-c-sharp – HimBromBeere