1

我尝试使用以下代码发送电子邮件:

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 无效地址

from email,to email,服务器主机名和端口都是正确的。完全相同的代码,具有完全相同的输入值在我们办公室的另一台机器上工作

4

2 回答 2

1

经过一番彻底的调试后找到了答案。

原来我的机器名称中有一个“å”字符(无效的瑞典字符)。更改后,它起作用了。

于 2009-07-29T14:03:28.240 回答
1

为 System.Net.Mail 发布了一个 KB,它影响了地址解析和 Unicode,因此它在一台机器上而不是另一台机器上工作的原因很可能是这个 KB 的存在。.NET 4.0 在解析电子邮件地址方面也有一些重大改进。

于 2009-08-25T18:30:03.187 回答