c # сгенерированный CSV-файл, отправленный по электронной почте, вложенный в нижнюю часть письма в заметке лотоса - PullRequest
2 голосов
/ 21 мая 2009

У меня такая странная проблема, что вложение CSV, отправленное по электронной почте с использованием .NET SmtpClient, появилось в нижней части письма, а не вложения в Lotus Note. Я просто не знаю, как это выяснить, и у меня нет доступа к клиентскому компьютеру, что затрудняет отладку. Каковы возможные шаги, которые я могу предпринять, и возможные ошибки, о которых мне нужно знать?

Код указан ниже:

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

Спасибо.

Ответы [ 4 ]

3 голосов
/ 21 мая 2009

Это немного досягаемо, но вы можете установить расположение содержимого вложения.

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

0 голосов
/ 22 мая 2009

Просто для теста, попробуйте установить тип контента в нечто вроде «application / octet-stream». Например (от макушки головы):

ContentType ct = new ContentType( "application/octet-stream" );
ct.Name = "message.csv";
data.ContentType = ct;
0 голосов
/ 21 мая 2009

Попробуйте не устанавливать тип контента, а просто установить расширение. Windows должна справиться с этим, если у нее есть расширение, и оно может заставить его обрабатывать его как вложение, а не пытаться отобразить его в строке.

Убедитесь, что прикрепляемый файл имеет расширение.

0 голосов
/ 21 мая 2009

В некоторых почтовых клиентах есть опция для отображения вложенных файлов.

Наиболее очевидным тестом будет отправка вложенного файла .csv из других источников и просмотр результатов в клиенте, имеющем проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...