使用MVC视图的Rotativa --header-html无法正常工作

时间:2017-12-13 21:50:59

标签: rotativa

我最近开始在我的项目中使用Rotativa。我有HTML页面,它将列出多个表格中的数据。当用户将此HTML视为PDF时,我需要将页码显示为正在工作的页脚并使用MVC视图显示页眉。我面临的问题是我没有看到标题显示。我可以独立访问标题URL,它可以正常加载,但无法在pdf中加载它。有人可以帮我吗?

以下是我的行动方法:

以下操作方法将呈现PDF:

    public ActionResult PrintBenificiaryForm()
    {
        PrintBenificiary p = new PrintBenificiary();
        p.TeamMemberInfo = GetSessionValues();
        p.IndividualBenefitPlans = GetBenefitPlansandIndividuals();

        string customSwitches = string.Format(" --footer-left \"[page] of [toPage]\" --footer-spacing -10 --footer-font-size \"10\"  --header-html  \"{0}\" ", Url.Action("PrintHeader", "Home", null, this.Request.Url.Scheme));
        return new ViewAsPdf("PrintBenificiaryForm", p)// { FileName = p.TeamMemberInfo.FirstName + " " + p.TeamMemberInfo.LastName + ".pdf" };
        {
            CustomSwitches = customSwitches
        };
        //return View(p);
    }

标题的操作方法

    [AllowAnonymous]
    public ActionResult PrintHeader()
    {
        TeamMemberInfoModel t= GetSessionValues();
        return View(t);
    }

我附上了我的查看详情和头文件的位置。enter image description here

enter image description here

此外,我观察到当我将URL.action中的第三个参数作为新{area =“”}传递时,因为我在PDF上显示空白。

当我将区域作为空传递给URL时,返回

.Action方法

但是当我尝试传递null时,我得到401.2未经授权的错误。

这是我传递给URL.Action方法时返回的网址 - http://localhost:3842/p/Home/PrintHeader

enter image description here

0 个答案:

没有答案