用Ampersand发送电子邮件到地址

时间:2016-08-05 14:49:33

标签: c# email smtpclient

我有一个网络应用,需要将自动发送的电子邮件发送到我们公司内的群组电子邮件地址。他们选择的地址恰好有一个&符号 - 格式类似于X-Y&Z@email.com

C#不想发送电子邮件。或者,似乎它发送电子邮件但它永远不会到达收件人的收件箱。我认为&符导致问题。

我试图以多种方式处理它:

"X-Y&Z@email.com"
@"X-Y&Z@email.com"
"X-Y%26Z@email.com"
"X-Y&Z@email.com"   // I didn't expect this one to work, and it threw an exception

我们正在使用MailMessageSmtpClient来处理自动发送的电子邮件。

我是否应该采取不同的措施来逃避&符号?

编辑:代码:

public static void GenerateEmail(string from, List<string> to, string subject, string htmlBody) {        
    MailMessage message = new MailMessage(from, to.Aggregate((i, j) => i + "," + j));
    message.Subject = subject;

    [some code to prettify htmlBody and set message.Body]

    SmtpClient smtp = new SmtpClient([our company SMTP address]);
    smtp.Send(message);
}

List<string> to = new List<string> { "X-Y&Z@email.com" };
GenerateEmail("from@email.com", to, "Subject", "Body")

代码很标准。我没有写它,我只是打电话给GenerateEmail。我们的团队将其用于其他一些事情,其他事情也有效。

此外,使用这个带有&符号的奇怪电子邮件的小组已经使用了一段时间,并且过去没有任何问题。我认为这是我们第一次尝试向该地址发送自动电子邮件 - 通常只是其他用户通过Outlook发送内容。

SMTP服务器是我们的公司服务器,由我们的IT团队托管和运营。我无法访问服务器或日志。我们在这家公司使用的一切都是微软 - Outlook / ActiveDirectory / Exchange。

0 个答案:

没有答案