0

我有一个显示 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 }); 
            }
        }

这是一个控制器,我不能将客户端脚本与服务器端代码混合在一起,如果我将它放在指向该控制器的链接中,那么即使我的错误也会显示在新页面上,这对于用户。

我怎样才能实现我的目标?

4

1 回答 1

2

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

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

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

应该解决你的问题

于 2012-06-15T06:15:18.627 回答