我想在新的页面/窗口上显示PDF?

时间:2012-06-15 06:09:45

标签: c# asp.net asp.net-mvc file

我有一个打印方法,显示PDF,我希望它在新窗口中显示!

这就是我要在新页面,标签,窗口上显示的内容!!!

return File(arrStream, "application/pdf");

我的打印方式:

public ActionResult Print(int id) // sales contract Id
        {
            ParameterFields paramFields = CreateParameterFields(id); // pass the id of the contract
            // Save the report run details
            Guid reportRunId;
            SaveReportRunDetails(paramFields, out reportRunId);               

            try
            {

               <<< Print code >>>
              //Open a new page on this return 
                return File(arrStream, "application/pdf");
            }
            catch (Exception err)
            {
                ViewBag.ErrorMessage = err.Message;
                return RedirectToAction("Edit", new { id = id, error = err.Message }); 
            }
        }

这是一个控制器,我不能将客户端脚本与服务器端代码混合,如果我在一个指向该控制器的链接中,那么即使我的错误会显示在新页面上,这也会很糟糕并且对用户来说很烦人。

我如何实现目标?

1 个答案:

答案 0 :(得分:2)

要在新页面中打开pdf,只需在调用方法时使用target="_blank"

查看您的代码,您似乎没有使用帖子,所以简单

<a href="..." target="_blank">text</a> 

应解决您的问题