【问题标题】:MailAddress: An invalid character was found in the mail headerMailAddress:在邮件标头中发现无效字符
【发布时间】:2012-05-07 06:25:08
【问题描述】:

我正在使用 MailAddress 创建传真电子邮件。 我们正在使用名为 SatisFAXtion v 8.6 的系统。 要为传真提供封面,我可以将模板位置添加到 mail.TO 地址。

格式如下:

12125551234^template=cp\\FAXReportCover.rtf@fax.ourcompanymail.com

编译时它工作正常,但我需要两个反斜杠,所以我添加了两个作为转义字符。

当我运行程序时出现异常:

Message: An invalid character was found in the mail header:
StackTrace: at System.Net.Mail.MailAddressParser.ParseLocalPart(String data, Int32& index, Boolean expectAngleBracket, Boolean expectMultipleAddresses)
   at System.Net.Mail.MailAddressParser.ParseAddress(String data, Boolean expectMultipleAddresses, Int32& index)
   at System.Net.Mail.MailAddressParser.ParseMultipleAddresses(String data)
   at System.Net.Mail.MailAddressCollection.ParseValue(String addresses)
   at System.Net.Mail.MailAddressCollection.Add(String addresses)
   at System.Net.Mail.Message..ctor(String from, String to)
   at System.Net.Mail.MailMessage..ctor(String from, String to)

有没有办法在 MailAddress 对象的电子邮件地址中插入反斜杠?

【问题讨论】:

    标签: c# .net email exception-handling mailaddress


    【解决方案1】:

    如果将其修改为“网络”,我会收到此错误 --- 然后错误得到解决。 (我的理解是——如果指定pickupdirectory选项,标头-encoding utf-8(base64)报错)

    希望对你有帮助

    【讨论】:

      【解决方案2】:

      几年前,我发现了针对类似问题的解决方法。问题出在 MailAddress 的构造函数中的 DisplayName 参数中。

      也许它也会帮助你:

      http://netpl.blogspot.com/2008/09/smtpclient-exception-invalid-character.html

      【讨论】:

      • 注意,您的解决方法是针对 displayName 参数,而不是地址参数。
      • 我已经删除了反对票并改进了答案。虽然它们没有解决问题的确切问题,但它们可能对未来的用户有用。
      • 为使其成为更好的答案,请提供解决方案,而不仅仅是指向其他网站的链接。
      • @xpereta:这不仅仅是一个网站,它还是我的博客。无论如何,感谢您的洞察力和更正。
      • 我知道这是您的博客并且您很关心它,但对于未来的用户来说,它是一个外部网站。如果可能,此处的答案应包含解决问题的解释。
      【解决方案3】:

      来自Wikipedia

      特殊字符的限制是它们只能是 当包含在引号之间时使用,并且其中 3 个(The 空格、反斜杠 \ 和引号 " (ASCII: 32, 92, 34)) 也必须 前面有一个反斜杠 \(例如“\ \\””)。

      因此,我认为您的电子邮件地址无效,因为引号之间不包含反斜杠。

      如果您可以将地址更改为 12125551234^template="cp\\"FAXReportCover.rtf@fax.ourcompanymail.com 之类的地址,我想就可以了。

      【讨论】:

      • 所以这已经解决了问题,但只需将完整地址放在引号中:
      • "\"12125551234^template=cp\\\\FAXReportCover.rtf\"" + "@fax.ourcompanymail.com"
      猜你喜欢
      • 2015-09-18
      • 1970-01-01
      • 2013-07-29
      • 2014-01-03
      • 2014-11-12
      • 2019-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多