为什么我会得到5.5.4无效地址错误?
问题描述:
我尝试使用下面的代码来发送电子邮件:为什么我会得到5.5.4无效地址错误?
MailMessage message = new MailMessage();
message.From = new MailAddress(fromMailAddress.Trim());
message.To.Add(new MailAddress(toMailAddress.Trim()));
message.Subject = subject;
message.Body = body;
message.SubjectEncoding = System.Text.Encoding.UTF8;
message.BodyEncoding = System.Text.Encoding.UTF8;
SmtpClient client = new SmtpClient();
try
{
client.Send(message);
}
catch(Exception e)
{
throw e;
}
但是,我得到了异常:
服务器响应为:5.5.4无效地址
的从电子邮件到电子邮件,服务器主机名和端口都是正确的。完全相同的代码,用完全相同的输入值工作在另一台机器上在我们的办公室
答
发现了一些进行彻底的调试后的答案。
原来我的机器的名字中有一个“A'字符(无效字符瑞典)。改变后,它的工作。
答
有释放System.Net.Mail,受影响的地址解析和Unicode一个KB,这样的原因,它的工作一台机器上,而不是其他很可能这个KB的存在。 .NET 4.0在解析电子邮件地址方面也有一些重大的改进。