Отправьте Отчет SQL в почтовом вложении E с помощью C# и ASP.NET

Для новой версии DataTables:

<style>
     .dataTable > thead > tr > th[class*="sort"]::after{display: none}
</style>
6
задан gbn 28 May 2009 в 09:23
поделиться

2 ответа

Возможно, я ошибаюсь (я мало знаю о SSRS), но я думаю, что вам следует

  1. Сохранить файл в файловой системе

     System.IO.File.WriteAllBytes ("c : \ temp \ temp.pdf ", байты);
    
  2. Отправить файл по электронной почте

     MailMessage mail = new MailMessage ();
    mail.From = "Я";
    mail.To = "Вы";
    mail.Subject = "Тема";
    mail.Body = "Тело";
    mail.BodyFormat = MailFormat.Html;
    mail.Attachments.Add (новый MailAttachment ("c: \ temp \ temp.pdf"));
    
    пытаться
    {
     SmtpMail.Send (почта); 
    }
    улов (исключение ex)
    {
     Response.Write («Ой!» + Например, сообщение);
    }
    
3
ответ дан 8 December 2019 в 13:01
поделиться

Вместо того, чтобы сначала сохранять PDF-файл в файловой системе, вы можете попробовать использовать byte [], возвращенный с сервера отчетов, и прикрепите это:

MemoryStream ms = new MemoryStream(bytes); 
mail.Attachments.Add(new Attachment(ms, "temp.pdf"));

Для быстрой подделки одного из моих отчетов я сделал следующее:

WebClient client = new WebClient();
byte[] bytes = client.DownloadData("http://localhost/ReportServer/Pages/ReportViewer.aspx? *** report name *** &rs%3aFormat=PDF");
MemoryStream ms = new MemoryStream(bytes);
mail.Attachments.Add(new Attachment(ms, "temp.pdf"));

Надеюсь, это поможет

14
ответ дан 8 December 2019 в 13:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: