2011-12-31 99 views
0

我有一个带有电子邮件地址的简单文本框。在WinForms中验证电子邮件地址的最佳方法

我需要知道找出该电子邮件地址是否有效的最佳和最简单的方法。我想知道我该怎么做。

我试过使用下面的代码,但它不显示任何消息对我?任何人都可以指出我正在犯的错误吗?

Public Function IsValidEmailAddress(ByVal email As String) As Boolean 
    Try 
     Dim ma As New MailAddress(email) 
     MsgBox(True, MsgBoxStyle.Information) 
    Catch 
     MsgBox(False, MsgBoxStyle.Information) 
    End Try 
End Function 

我调用这个函数是这样的:

Call IsValidEmailAddress(txtEmail.txt) 
+0

我不知道MailAddress()是做什么的,但是很多电子邮件地址验证例程都错了,因为规则比大多数人意识到的要复杂得多(https://en.wikipedia.org/wiki/E-MAIL_ADDRESS#语法)。因此,请注意,您最终不会排除具有奇怪电子邮件地址的用户。 – Bill 2011-12-31 20:26:35

+0

@比尔 - 感谢您的信息,我会看看链接。 – coder 2011-12-31 20:29:17

+0

[我如何验证使用.NET Framework的电子邮件地址格式?](http://stackoverflow.com/questions/1331084/how-do-i-validate-email-address-formatting-with-the- net-framework) – MarkJ 2012-01-01 09:10:45

回答

2

假设你的电话代码是不是一个错字,问题是你没有使用正确的属性:

Call IsValidEmailAddress(txtEmail.txt) 

应该是:

Call IsValidEmailAddress(txtEmail.Text) 

我已验证IsValidEmailAddress正常工作。

+0

@ Competent_tech - 首先感谢信息,我很惊讶,我的代码出了什么问题!我无法获得任何消息。是否有我的代码错误? – coder 2011-12-31 20:36:32

+0

再次愚蠢的错误!谢谢你指出正确的错误。 – coder 2011-12-31 20:38:11

+1

@Kiran:我原来的回答是不正确的,所以我修改它以表明我认为是问题所在。我已经验证IsValidEmailAddress在正确调用时可以正常工作。 – 2011-12-31 20:38:49

相关问题