使用 Mailkit 验证输入字符串是否为电子邮件

Vin*_*llo 1 mailkit asp.net-core

我看到MimeKit.MailboxAddress有一种TryParse方法,如果它被覆盖,可以使用它来验证某些字符串输入是电子邮件地址吗?这些文档非常混乱,TryParse单独解析!realEmail!com"就可以了。

需要明确的是,我不需要验证电子邮件是否确实存在,只需验证其是否有效即可。我还想避免使用正则表达式,只是确保电子邮件在 MimeKit 看来是有效的...我是否必须创建一条假消息并尝试添加地址才能做到这一点?似乎太过分了。System.Net.Mail 只会通过无效电子邮件的异常,这很好,因为我可以只使用 try/catch。

jst*_*ast 7

MimeKit 旨在尝试尽可能有效地对待所有输入。

你想要的是我的https://github.com/jstedfast/EmailValidation库。

  • 这应该是正则表达式,而不是引用(电话自动更正) (2认同)
  • MimeKit 2.1.3 将有更多的 ParserOptions 来调整地址解析器的行为,但即便如此,它的设计也不像 EmailValidation 库那么严格,这只是由于 MimeKit 必须兼容的损坏的电子邮件软件的性质。 (2认同)