Ejemplo n.º 1
0
        public IHttpActionResult GetDownload(int id)
        {
            /* Get Invoice PDF */
            Invoice             invoice     = UnitOfWork.Invoices.Get(id);
            InvoicePdf          pdf         = new InvoicePdf(invoice);
            PdfDocumentRenderer pdfRenderer = new PdfDocumentRenderer(false);

            pdfRenderer.Document = pdf.CreateDocument();
            pdfRenderer.RenderDocument();
            MemoryStream stream = new MemoryStream();

            pdfRenderer.Save(stream, false);

            /* Send PDF file */
            var result = new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StreamContent(stream)
            };

            result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/pdf");

            var response = ResponseMessage(result);

            return(response);
        }
Ejemplo n.º 2
0
        public static void SendEmail(Invoice invoice, string from, string emailTo)
        {
            string      subject  = "Invoice - " + invoice.InvoiceNo;
            string      FromMail = from;
            MailMessage mail     = new MailMessage();

            mail.From = new MailAddress("*****@*****.**");
            mail.To.Add(emailTo);
            mail.Subject = subject;
            string body = "Hi," + Environment.NewLine + "Please find the attached file. For more information contact us at: " + FromMail + Environment.NewLine + Environment.NewLine + "Kind Regards," + Environment.NewLine + invoice.Agent.Name;

            mail.Body = body;

            InvoicePdf pdf = new InvoicePdf(invoice);

            PdfDocumentRenderer pdfRenderer = new PdfDocumentRenderer(false);

            pdfRenderer.Document = pdf.CreateDocument();

            pdfRenderer.RenderDocument();


            MemoryStream stream = new MemoryStream();

            pdfRenderer.Save(stream, false);



            mail.Attachments.Add(new Attachment(stream, "Invoice-" + DateTime.UtcNow.ToShortDateString() + ".pdf", MediaTypeNames.Application.Pdf));

            SmtpClient SmtpServer = new SmtpClient();

            SmtpServer.Port                  = 587;
            SmtpServer.Host                  = "smtp.gmail.com";
            SmtpServer.EnableSsl             = true;
            SmtpServer.DeliveryMethod        = SmtpDeliveryMethod.Network;
            SmtpServer.UseDefaultCredentials = false;
            SmtpServer.Credentials           = new NetworkCredential("*****@*****.**", "alphateam");
            SmtpServer.Send(mail);
        }