曼城vs阿森纳,夫妻一场演员表,晋城五个人出名了
一、下载rotaiva
工具 = > nuget包管理器 = > 管理解决方案的nuget程序包
在打开的页面中搜索 rotativa.aspnetcore 如下图:
选中红框的记录,左边会出现你解决方案中的所有项目,选中要添加的项目点击安装,安装完成后项目后面会出现版本号,如下图:
二、配置rotaiva
在startup.cs的rotaiva方法中添加以下内容:
rotativaconfiguration.setup(env);
完整代码如下:
public void configure(iapplicationbuilder app, ihostingenvironment env) { if (env.isdevelopment()) { app.usedeveloperexceptionpage(); } else { app.useexceptionhandler("/home/error"); } rotativaconfiguration.setup(env);//rotativaconfiguration 转pdf 功能 app.usestaticfiles(); app.usecookiepolicy(); app.usemvc(routes => { routes.maproute( name: "default", template: "{controller=home}/{action=index}/{id?}"); }); } }
添加pdf转换工具
在wwwroot目录下添加rotativa目录 ,再把wkhtmltoimage.exe和wkhtmltopdf.exe复制进去,
此两个文件在此网站下载:https://github.com/webgio/rotativa.aspnetcore
如下图:
三、开始建立静态pdf档
在homecontroller 下建立一个action,如下图:
[httpget] public iactionresult pdf() { return new viewaspdf("pdf"); }
然后建立cshtml
@{ viewdata["title"] = "pdf"; } <h2>pdf</h2>
启动项目,打印页面,可以看到下载pdf页面,最终pdf如下:
四、建立动态pdf档
建立controller
[httpget] public iactionresult pdfdemo() { list<tbl_page> pagelist = new list<tbl_page>(); pagelist.add(new tbl_page()
{ page_name="1", page_no="1" }); pagelist.add(new tbl_page() { page_name = "2", page_no = "2" }); pagelist.add(new tbl_page() { page_name = "3", page_no = "3" }); return new viewaspdf(pagelist); }
生成cshtml
@model ienumerable<netcoreapidemo.model.tbl_page> @{ viewdata["title"] = "pdfdemo"; } <h2>pdfdemo</h2> <table class="table table-bordered"> <thead> <tr> <th>page_no</th> <th>page_name</th> </tr> </thead> <tbody> @foreach (var item in model) { <tr> <td>@item.page_no</td> <td>@item.page_name</td> </tr> } </tbody> </table>
最终生成pdf如下:
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
asp.net搭建博客,使用BlogEngine.NET+MySql搭建博客
网友评论