Asp.net MVC学习日记三(以PDF格式输出)
来源:互联网 发布:淘宝中国质造可靠吗 编辑:程序博客网 时间:2024/05/29 12:52
1、首先你要下载一个itextsharp.dll 下载地址http://somewebguy.wordpress.com/2009/05/08/itextsharp-simplify-your-html-to-pdf-creation/
2、在那个网址里面找一个HtmlToPdfBuilder.cs文件,把它引入自己的工程
3、建一个PdfResult类
public class PdfResult : ActionResult
{
public override void ExecuteResult(ControllerContext context)
{
HtmlToPdfBuilder builder = new HtmlToPdfBuilder(PageSize.LETTER);
HtmlPdfPage page1 = builder.AddPage();
page1.AppendHtml("<h1>Order #19807</h1>");
page1.AppendHtml("<p>Andrew Siemer<br>");
page1.AppendHtml("4254 Some Street<br>");
page1.AppendHtml("Los Angeles, CA</p>");
page1.AppendHtml("<table><tr><td><b>Product</b></td><td><b>Price</b></td></tr>");
page1.AppendHtml("<tr><td>ASP.NET MVC Cookbook</td><td>$40.00</td></tr></table>");
byte[] buffer = new byte[4096];
byte[] file = builder.RenderPdf();
HttpResponseBase response = context.HttpContext.Response;
response.ContentType = "application/pdf";
MemoryStream pdfStream = new MemoryStream(file);
while (true)
{
int read = pdfStream.Read(buffer, 0, buffer.Length);
if (read == 0)
break;
response.OutputStream.Write(buffer, 0, read);
}
response.End();
}
}
4、在HomeController实现一个Action(GetPdf)
public PdfResult GetPdf()
{
return new PdfResult();
}
5、在Index视图里,添加一个连接导向GetPdf
Click <%= Html.ActionLink("here","GetPdf", "Home") %> to get your order in PDF format!
ok,大功完成,happy 一下
- Asp.net MVC学习日记三(以PDF格式输出)
- 学习ASP.NET + MVC(三)
- Asp.net MVC学习日记一(显示图片)
- Asp.net MVC学习日记二(登陆验证)
- Asp.net MVC学习日记五(自定义RouteHandler)
- Asp.net MVC学习日记十(JQuery删除)
- Asp.net MVC学习日记十三(页面导航)
- Asp.net MVC学习日记十四(页面提交验证)
- Asp.net MVC学习日记十五(保持用户登录)
- Asp.net MVC学习日记十六(数据Cache)
- Asp.net MVC学习日记十七(页面Cache)
- Spring MVC 学习笔记 PDF/Excel格式输出
- Spring MVC 学习笔记 十二 PDF/Excel格式输出
- ASP.NET学习日记
- Asp.net MVC学习日记四(如果无法Route,指向自定义的错误页面)
- Asp.net MVC学习日记六(过滤黑名单,使其无法访问)
- Asp.net MVC学习日记七(实现分页和排序)
- Asp.net MVC学习日记八(JQuery和分部视图,查看详细)
- 利用SQL SERVER导入向导导入数据!
- NIO利用磁盘映射 实现的文件内容查找
- in 和 exists区别
- Makefile 常用函数表
- 在线文本编辑器(五)——与框架整合及总结
- Asp.net MVC学习日记三(以PDF格式输出)
- all to undefined function sqlite_open()错误php sqlite_open()不可以调
- 从几幅架构图中偷得半点海量数据处理经验
- JDBC连接数据库的笔记和例子
- 最长非降子序列、非升子序列(问题)
- C#进度条实现之异步实例浅析
- 十七道海量数据处理面试题与Bit-map详解
- 向DB2里导入平面文件。
- KindEditor