System.Net.Mail criando emails e arquivos eml inválidos? Inserir pontos extras nos nomes de host

Parece que o SmtpClient do .NET está criando e-mails com um ponto extra nos nomes de host se o ponto aparecer no início de uma linha codificada MIME (por exemplo, test.com às vezes aparece como test..com). Código de exemplo:

[TestMethod]
public void TestEmailIssue()
{
    var mail = new System.Net.Mail.MailMessage();
    var smtpClient = new System.Net.Mail.SmtpClient();

    mail.To.Add("[email protected]");
    mail.Subject = "Test";
    mail.From = new System.Net.Mail.MailAddress("[email protected]");
    mail.Body = "Hello this is  a short test of the issue:"
             +" <a href='https://test.com/'>https://test.com/</a>: ";

    smtpClient.PickupDirectoryLocation = "C:\\temp\\";
    smtpClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.SpecifiedPickupDirectory;
    smtpClient.Send(mail);
}

Isso cria um arquivo .eml parecido com este:

X-Sender: test @ test.com

Receptor X: Teste @ test.com

Versão MIME: 1.0

De: test @ test.com

Para: Test @ test.com

Data: 6 de julho de 2011 15:55:28 -0400

Subject: Test

Tipo de Conteúdo: texto / simples; charset = us-ascii

Codificação de transferência de conteúdo: quoted-printable

Olá, este é um pequeno teste do problema: https: // test =

.. com / '>https: //test.com: = 20

Ao enviar o arquivo ou abrir no Outlook (ou em qualquer outro programa), os pontos duplos são exibidos (ou seja, test..com). Observe que, se eu remover o espaço extra (em "é um"), esse test.com será exibido corretamente, pois o ponto não aparecerá mais no início da linh

Isso causa um problema ao tentar enviar endereços de sites, e recebemos chamadas de clientes dizendo que eles não podem clicar em nossos links.

Alguém mais experimentou isso? Como podemos resolver esse problema além de escrever nossa própria codificação?

questionAnswers(3)

yourAnswerToTheQuestion