c# - 带有 rotativa 和空布局的图像标题
问题描述
我最近开始使用 Rotativa,这太棒了,但是今天,我尝试在我的 pdf 中添加一个标题,它可以正常工作,但是_layout.cshtml
当我尝试使用Layout = null
或渲染标题来删除它PartialView
而不是View
它只是显示一个空白页面。
这就是我的工作方式
public ActionResult Print(string CodigoDelfos, int Revision, string Versiones)
{
//Create the url for the header (Test action)
UriBuilder u = new UriBuilder(Request.Url.AbsoluteUri)
{
Path = Url.Action("Test", "Home", null),
Query = null
};
//Format the header to read Test.cshtml file
string t = string.Format("--header-html {0}", u.Uri.ToString());
//The action i'll use to create the pdf
return new Rotativa.ActionAsPdf(nameof(ImprimirDetalleDistribucion), new
{
CodigoDelfos,
Revision,
Versiones
})
{
CustomSwitches = t
};
}
然后Test.cshtml
文件
<div class="container">
<img src="~/Content/Images/CabeceraGarantizados.jpg" class="img-fluid" />
</div>
View()
如果我将它渲染为(使用默认布局渲染),它在这里工作正常,但如果我这样做,因为PartialView()
pdf 结果blank
与我使用的方式相同Layout = null
为什么会发生这种情况?
解决方案
显然 Rotary 需要文件具有DOCTYPE
定义的
解决方案只是添加DOCTYPE
测试.cshtml
@{ Layout = null; }
<!DOCTYPE html>
<div class="container">
<img src="~/Content/Images/CabeceraGarantizados.jpg" class="img-fluid" />
</div>
推荐阅读
- c - C 套接字编程 - 连接到外部源
- r - R过滤包含单词组合的行
- python - 如何在使用 BasicLSTMCell tensorflow 进行序列分类时打印(或查看)i、j、f 和 o 门值和维度?
- c++ - assert() 是否在发布模式下充当身份函数?
- docker - 线程“主”java.net.UnknownHostException 中的异常:zookeeper:名称或服务未知
- c# - 使用 MediatR 和 Autofac 的组件注册问题
- angular - 在 Electron 中集成 Angular CLI 代理配置
- javascript - 为什么“for循环”不与加法赋值一起使用时不返回数组中的所有值?这背后的工作流程是什么?
- nginx - 500 内部服务器错误 Nginx 运行反应应用程序
- c# - EF延迟加载,将查询提取到另一个方法导致导航属性为空