ASP.NET中如何实现电子邮件地址格式的详细验证功能?

2026-03-30 12:091阅读0评论SEO问题
  • 内容介绍
  • 相关推荐

本文共计347个文字,预计阅读时间需要2分钟。

ASP.NET中如何实现电子邮件地址格式的详细验证功能?

我注意到,如果尝试向无效的电子邮件地址发送邮件,系统会抛出异常。以下是一个简化的代码片段,用于展示这一过程:

javatry { MailAddress invalidAddress=new MailAddress(invalidemailaddress, recipientname); // 尝试发送邮件到无效地址 sendEmail(invalidAddress);} catch (Exception e) { // 异常处理 System.out.println(The specified string is not in the form required for an e-mail address);}

ASP.NET中如何实现电子邮件地址格式的详细验证功能?

我注意到,如果您尝试向无效地址发送电子邮件,则会引发异常:

MailAddress To=new MailAddress("invalidemailaddress","recipientname");

抛出:

"The specified string is not in the form required for an e-mail address"

这意味着必须有一个在MailAddress中执行的.Net函数来检查电子邮件地址是否有效.有没有办法直接调用这个’验证’功能?这样我就不需要创建自己的IsValid函数了.

是的,有这样的.Net功能,但“标准”意味着它的功能无法访问:MailAdress使用私有ParseAddress方法,后者又使用System.Net.Mime.MailBnfHelper.后者是一个内部类,因此它不能(轻松地)在框架本身之外访问.

因此,使用这些函数的唯一方法是使用反射,我强烈反对.由于这些函数没有文档记录且无法访问而没有反射,因此它们的实现可能会发生变化,并且您的代码可能会在未来版本的框架中中断.

本文共计347个文字,预计阅读时间需要2分钟。

ASP.NET中如何实现电子邮件地址格式的详细验证功能?

我注意到,如果尝试向无效的电子邮件地址发送邮件,系统会抛出异常。以下是一个简化的代码片段,用于展示这一过程:

javatry { MailAddress invalidAddress=new MailAddress(invalidemailaddress, recipientname); // 尝试发送邮件到无效地址 sendEmail(invalidAddress);} catch (Exception e) { // 异常处理 System.out.println(The specified string is not in the form required for an e-mail address);}

ASP.NET中如何实现电子邮件地址格式的详细验证功能?

我注意到,如果您尝试向无效地址发送电子邮件,则会引发异常:

MailAddress To=new MailAddress("invalidemailaddress","recipientname");

抛出:

"The specified string is not in the form required for an e-mail address"

这意味着必须有一个在MailAddress中执行的.Net函数来检查电子邮件地址是否有效.有没有办法直接调用这个’验证’功能?这样我就不需要创建自己的IsValid函数了.

是的,有这样的.Net功能,但“标准”意味着它的功能无法访问:MailAdress使用私有ParseAddress方法,后者又使用System.Net.Mime.MailBnfHelper.后者是一个内部类,因此它不能(轻松地)在框架本身之外访问.

因此,使用这些函数的唯一方法是使用反射,我强烈反对.由于这些函数没有文档记录且无法访问而没有反射,因此它们的实现可能会发生变化,并且您的代码可能会在未来版本的框架中中断.