Mam aplikację C#, która wysyła e-maile z raportów arkusza Excel za pośrednictwem serwera Exchange 2007 za pomocą protokołu SMTP. Dotyczy to użytkowników programu Outlook, ale w przypadku użytkowników Thunderbird i Blackberry załączniki zostały zmienione na "Część 1.2".Wysyłanie wiadomości e-mail z załącznikami z C#, załączniki przychodzą jako część 1.2 w Thunderbirdie
Znalazłem ten article, który opisuje problem, ale nie wydaje mi się, aby dać obejście tego problemu. Nie mam kontroli nad serwerem Exchange, więc nie mogę wprowadzać w nim zmian. Czy jest coś, co mogę zrobić na końcu C#? Próbowałem używać krótkich nazw plików i kodowania HTML dla ciała, ale nie zrobiłem żadnej różnicy.
skrzynce wysyłając kod jest po prostu tak:
public static void SendMail(string recipient, string subject, string body, string attachmentFilename)
{
SmtpClient smtpClient = new SmtpClient();
NetworkCredential basicCredential = new NetworkCredential(MailConst.Username, MailConst.Password);
MailMessage message = new MailMessage();
MailAddress fromAddress = new MailAddress(MailConst.Username);
// setup up the host, increase the timeout to 5 minutes
smtpClient.Host = MailConst.SmtpServer;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = basicCredential;
smtpClient.Timeout = (60 * 5 * 1000);
message.From = fromAddress;
message.Subject = subject;
message.IsBodyHtml = false;
message.Body = body;
message.To.Add(recipient);
if (attachmentFilename != null)
message.Attachments.Add(new Attachment(attachmentFilename));
smtpClient.Send(message);
}
Dzięki za wszelką pomoc.
Czy próbował zdefiniować/zmienić 'Attachment Właściwość .Name? – Alex
Nie, nie mam - "Pobiera lub ustawia wartość nazwy typu treści MIME", czy masz sugestię co do wartości? Dzięki. – Jon
"Nazwa" jest wyświetlana jako nazwa załącznika po otrzymaniu wiadomości e-mail z załącznikiem. Możesz spróbować dowolnej wartości. – Alex