我正在使用microsoft的MVC平台来创建一个Web应用程序。在此应用程序中,用户将填写HTML表单,单击“提交”,重定向到成功的消息页面,并以pdf格式接收表单的打印输出。另外,我还想将表单中的条目保存在数据库中。我正在使用iTextSharp来创建和编辑PDF。
我正在寻找有关管理MVC工作流程的建议。具体来说,我有一个控制器方法,可以指导工作流程:
我的主要问题是:我应该如何委派重定向到成功页面并返回pdf的任务?截至目前,我的控制器似乎只能返回一个或另一个。我可以重定向到“附带”PDF的视图吗?
答案 0 :(得分:0)
我在这种情况下所做的是创建一个控制器动作,该动作返回与数据库中给定条目id相关联的PDF。
public FileResult DownloadPdf(int id)
{
byte[] data;
// ... Generate PDF
return File(data, "application/pdf");
}
然后处理表单POST的控制器操作执行以下操作:
然后,成功视图可以使用已经指定的ID链接到PDF(作为下载链接),或者可以将其嵌入到iframe中(哎呀!)。
请注意,这仅适用,因为您要将值保存在数据库中。如果不使用数据库,则必须:
希望有所帮助。