5.5.4 Invalid Addressエラーが発生するのはなぜですか?
-
05-07-2019 - |
質問
次のコードを使用してメールを送信しようとしました:
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無効なアドレス
送信元メール、送信先メール、サーバーのホスト名とポートはすべて正しいです。まったく同じコードで、まったく同じ入力値がオフィスの別のマシンで動作します
解決
いくつかの徹底的なデバッグの後に答えを見つけました。
マシン名に「å」文字(無効なスウェーデン文字)が含まれていることを確認します。それを変更した後、動作しました。
他のヒント
アドレス解析とユニコードに影響するSystem.Net.MailのKBがリリースされたため、一方のマシンで動作し、もう一方のマシンでは動作しない理由は、おそらくこのKBの存在でした。 .NET 4.0では、メールアドレスの解析が大幅に改善されています。
所属していません StackOverflow