Die Methode SmtpClient.Send () löst diese Ausnahme aus, wenn ich versuche, ein E-Mail an eine Adresse mit einem hervorgehobenen Zeichen (é):
System.Net.Mail.SmtpException: Der Client oder Server ist nur konfiguriert für E-Mail-Adressen mit ASCII-Local-Parts: lé[email protected].
bei System.Net.Mail.MailAddress.GetAddress (Boolean allowUnicode)
bei System.Net.Mail.SmtpClient.ValidateUnicodeRequirement (MailMessage ...)
bei System.Net.Mail.SmtpClient.Send (MailMessage-Nachricht)
Die Formulierung der Botschaft bringt mich dazu, dass es eine Einstellung geben könnte, die ich aktivieren kann, um diese Arbeit zu machen, obwohl ich nichts zu diesem Thema gefunden habe.
Ich habe mehrere SMTP-Server ausprobiert, einschließlich Google Mail. Hier sind die relevanten Bits für eine Repro:
Code
%Vor%app.config
%Vor% Wenn die Eigenschaft DeliveryFormat Ihrer SmtpClient-Instanz lautet Legen Sie SmtpDeliveryFormat.SevenBit
(die Standardeinstellung) fest, die Sie dann festlegen müssen Stellen Sie sicher, dass Ihr SMTP-Gateway mit SMTPUTF8 antwortet, wenn ELHO von .NET gesendet wird, während er versucht, die E-Mail zu senden. SmtpClient verwendet dies, um herauszufinden, ob das Gateway UTF8 unterstützen kann.
Wenn das DeliveryFormat SmtpDeliveryFormat.International
ist, können Sie unabhängig davon senden.
Tags und Links .net c# smtpclient smtp