как создать PDF-файл представления, прикрепите PDF-файл к электронной почте, используя asp.net - PullRequest
0 голосов
/ 30 июня 2019

Мне нужно отправить PDF-файл, прикрепленный к электронному письму, и я это сделал, но файл PDF имеет только HTML-код без JQuery или загрузочного кода, и я не знаю, почему.

Я пытался использовать частичное представление, но сохраните информацию о форме, сгенерируйте PDF-файл на основе этой информации, а затем прикрепите этот PDF-файл к сообщению электронной почты одним нажатием кнопки. Это привело к ошибке в модели (Model.get return null)

этокод моего взгляда создать с того момента, когда информация хранится в базе данных, а затем логика PDF и электронной почты

db.factura.Add(factura);
db.SaveChanges();

var pdf = new ViewAsPdf2("pdf", factura); //"pdf" is the view that contains the information to fill the pdf 
byte[] pdfByteArray = pdf.GetByte(ControllerContext);

string from = ConfigurationManager.AppSettings["FromEmailID"];
string to = ConfigurationManager.AppSettings["ToEmailID"];
MailMessage message = new MailMessage(from, to);
message.Subject = "test";
message.SubjectEncoding = Encoding.UTF8;
message.Body = "Esto es un test de generacion del pdf y el envio de un archivio adjunto en el email";
message.IsBodyHtml = true;

MemoryStream file = new MemoryStream(pdfByteArray);
file.Seek(0, SeekOrigin.Begin);
Attachment data = new Attachment(file, "RunTime_Attachment.pdf", "application/pdf");
ContentDisposition disposition = data.ContentDisposition; //mime o rotativa
disposition.CreationDate = System.DateTime.Now;
disposition.ModificationDate = System.DateTime.Now;
disposition.DispositionType = DispositionTypeNames.Attachment;
message.Attachments.Add(data);

SmtpClient SmtpMail = new SmtpClient(ConfigurationManager.AppSettings["SMTP"]);
SmtpMail.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["UserName"], ConfigurationManager.AppSettings["password"]);
SmtpMail.Port = 587;
SmtpMail.EnableSsl = true;
SmtpMail.Send(message);




return RedirectToAction("Index");

PDF и электронная почта отправляются хорошо, но это PDF, который я получаю https://drive.google.com/open?id=1czQn2U0aBDYGDl7-DWsZKnslO99FxSoE Я хочу, чтобы у pdf был код jquery и начальной загрузки

...