如何确保我的 Web 表单应用程序的用户输入了电子邮件地址?我看过使用正则表达式和 EmailAddress() 的示例,但我如何才能在下面的 if else 语句中实现一个或另一个?
if (emailTextBox.Text == "" || emailTextBox.Text.Length > 100)
{
emailErrorString = "Email: Enter email address. No more than 100 characters.\n\n";
emailString = null;
errorMessage = true;
}
else
{
emailString = emailTextBox.Text;
emailErrorString = null;
}
我尝试了以下代码,即使我输入了无效的电子邮件地址“jj@jj。我没有输入“.com,或,net,或类似的东西:
if (emailTextBox.Text == "" || emailTextBox.Text.Length > 100 ||
IsValid(emailTextBox.Text).Equals(false))
{
emailErrorString = "Email: Enter a valid email address. No more than 100
characters.\n\n"; emailString = null; errorMessage = true;
}
else
{
emailString = emailTextBox.Text; emailErrorString = null;
}
最佳答案
您可以使用 MailAddress类,如下所示:
public bool IsValid(string emailAddress)
{
try
{
MailAddress m = new MailAddress(emailaddress);
return true;
}
catch (FormatException)
{
return false;
}
}
或者, 您可以使用 RegEx(您应该能够找到一个适合验证电子邮件地址的)。 此链接给出了可用字符/模式的基本概念:Regexlib
关于c# - 如何确保用户在文本框中输入了电子邮件地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22180658/