我有一個C#應用程序,它使用SMTP通過Exchange 2007服務器通過電子郵件發送Excel電子表格報告。這些適用於Outlook用戶,但對於Thunderbird和Blackberry用戶,附件已更名爲「第1.2部分」。發送帶有C#附件的電子郵件,附件以Thunderbird的1.2部分的形式到達
我發現這個描述問題的article,但似乎沒有給我一個解決方法。我無法控制Exchange服務器,因此無法在其中進行更改。 C#端有什麼我可以做的嗎?我曾嘗試使用短文件名和HTML編碼的身體,但都沒有改變。
我的郵件發送代碼很簡單:
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);
}
感謝您的幫助。
你試圖定義/更改'附件.Name'屬性? – Alex 2010-05-13 10:45:24
不,我沒有 - 「獲取或設置MIME內容類型名稱的值」,你有什麼值嘗試的建議嗎?謝謝。 – Jon 2010-05-13 11:09:08
當收到附件的電子郵件時,名稱會顯示爲附件的名稱。所以你可以嘗試任何價值。 – Alex 2010-05-13 11:24:10