问题描述
我在 ASP.NET MVC 中创建了一个 WebGrid。
webGrid.Column("",format: item => Html.ActionLink("PDF","ExportPDF",new { id = item.sID },new { target = "_blank" })),webGrid.Column("",format: item => Html.ActionLink("E-mail","SendEmail",
第一个链接获取 item.sID
到控制器以导出文件 PDF
public void ExportPDF(int id)
{
// code
}
第二个链接打开一个新的 View
,其中包含用于发送电子邮件的表单
@using (@Html.BeginForm("Email","Home",FormMethod.Post))
{
@Html.AntiForgeryToken()
<div>
@Html.ValidationSummary(true,"",new { @class = "text-danger" })
<div class="row">
<div class="col-md-3">
<div class="form-group">
@Html.LabelFor(model => model.To,"To",htmlAttributes: new { @Class = "Mytextarea2" })
@Html.TextBoxFor(m => m.To,new { @Class = "Mytextarea2",placeholder = "To" })
@Html.ValidationMessageFor(m => m.To,new { @class = "text-danger" })
</div>
</div>
</div>
}
我无法使用发送电子邮件的表单检索和发送 item.sID
的值并发送一个新的 View
[HttpPost]
public ActionResult SendEmail(int id)
{
return View();
}
问题是
如何从视图中获取 item.sID 的值(带有发送电子邮件的表单)传递给 ActionResult 电子邮件(PersonModel 模型)以导出带有 item.sID 值的 pdf?
[HttpPost]
public ActionResult Email(PersonModel model)
{
string from = System.Web.HttpContext.Current.Session["UserEmail"].ToString();
using (MailMessage mail = new MailMessage(from,model.To))
{
mail.Subject = model.Subject;
mail.Body = model.Body;
mail.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "xxxx";
smtp.Port = 25;
smtp.Send(mail);
ViewBag.Message = "Email";
return View("Email",model);
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)