Por que recebo 5.5.4 erro de endereço inválido?
-
05-07-2019 - |
Pergunta
Eu tentei enviar um e-mail usando o seguinte código:
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;
}
No entanto, eu tenho a exceção:
A resposta do servidor foi: 5.5.4 endereço inválido
A partir de e-mail, para e-mail, nome de host do servidor ea porta estão todos corretos. O exato mesmo código, com exatos mesmos valores de entrada funciona em outra máquina em nosso escritório
Solução
Descobri a resposta depois de alguma depuração completa.
Acontece que o meu nome da máquina tem um 'A'-character (personagem sueco inválido) na mesma. Depois de mudar isso, funcionou.
Outras dicas
Houve um KB lançado para System.Net.Mail que a análise endereço afetada e Unicode de modo que a razão ele trabalhou em uma máquina e não a outra era provável a presença deste KB. NET 4.0 também tem algumas melhorias significativas na análise de endereços de email.