我遇到一个奇怪的问题,即使用.NET SmtpClient通过电子邮件发送的CSV附件出现在电子邮件的底部,而不是Lotus Notes中的附件。我只是不知道该怎么解决,而且我无法访问客户端计算机,因此调试非常困难。我需要采取哪些可能的步骤以及需要注意的陷阱?

代码如下:

var smtpClient = new SmtpClient
{
   Host = ConfigurationManager.AppSettings["smtpServer"],
   Port = Convert.ToInt32(ConfigurationManager.AppSettings["smtpPort"])
};
var mailMessage = new MailMessage();
mailMessage.Attachments.Add(new Attachment(attachment, contentType));

//ContentType = "text/csv";
//attachment is the temp file disk path


谢谢。

最佳答案

这有点可及,但您可能需要设置附件的内容处置。

var mailMessage = new MailMessage();
Attachment data = new Attachment(attachment, contentType);
ContentDisposition disposition = data.ContentDisposition;
disposition.FileName = "message.csv";
mailMessage.Attachments.Add(data);


改编自:
http://msdn.microsoft.com/en-us/library/system.net.mail.attachment.contentdisposition.aspx

关于c# - C#生成的csv文件通过嵌入在Lotus Notes中电子邮件底部的电子邮件发送,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/891598/

10-11 17:07