Saya memiliki aplikasi C # yang mengirimkan laporan spreadsheet Excel melalui email melalui server Exchange 2007 menggunakan SMTP. Ini datang dengan baik untuk pengguna Outlook, tetapi untuk pengguna Thunderbird dan Blackberry, lampiran telah diubah namanya menjadi "Bagian 1.2".
Saya menemukan artikel ini yang menjelaskan masalah tersebut, tetapi sepertinya tidak memberi saya solusi. Saya tidak memiliki kendali atas server Exchange sehingga tidak dapat membuat perubahan di sana. Apakah ada yang bisa saya lakukan di ujung C #? Saya telah mencoba menggunakan nama file pendek dan pengkodean HTML untuk tubuh tetapi tidak ada bedanya.
Kode pengiriman email saya hanyalah ini:
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);
}
Terima kasih atas bantuannya.
Name
ditampilkan sebagai nama lampiran ketika email dengan lampiran diterima. Jadi Anda dapat mencoba nilai apa pun.
Attachment.Name
properti?