C# 将gridview数据导出为pdf

C# 将gridview数据导出为pdf,c#,asp.net,C#,Asp.net,它的抛出错误就像文档没有页面一样 我写过这样的代码 protected void Button4_Click(object sender, EventArgs e) { Response.ContentType = "application/pdf"; Response.AddHeader("content-disposition","attachment;filename=GridViewExport.pdf"); Response.Cache.SetCacheabil

它的抛出错误就像文档没有页面一样

我写过这样的代码

protected void Button4_Click(object sender, EventArgs e)
{
    Response.ContentType = "application/pdf";
    Response.AddHeader("content-disposition","attachment;filename=GridViewExport.pdf");
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    StringWriter sw = new StringWriter();
    HtmlTextWriter hw = new HtmlTextWriter(sw);
    GridView1.AllowPaging = false;
    GridView1.DataBind();
    GridView1.RenderControl(hw);
    StringReader sr = new StringReader(sw.ToString());
    Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
    HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
    PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
    pdfDoc.Open();
    htmlparser.Parse(sr);
    pdfDoc.Close();
    Response.Write(pdfDoc);
    Response.End();  
}

有人能帮我吗?

我建议你阅读你正在使用的图书馆的文档

该错误表明,在尝试向新文档添加内容之前,您需要向该文档添加页面


在一些PDF库中,您添加了一个页面,然后需要在添加内容之前将其设置为当前页面。

您使用的是什么PDF库?我使用的是adobe reader9..@Sweety-正如我所说的。阅读文档。@Sweety-您正在使用Adobe reader 9组件。请阅读文档。@oded我可以从哪个位置下载最新的itextsharp.dll,以便使用itextsharp.text.Table类型。目前,我在使用itextsharp.text.Table时使用itextsharp-5.0.2-dll,出现错误“名称空间表的类型不存在”。甚至我也不能使用pdftable类型。@Sweety-所以你不是在使用Adobe创建PDF,而是在使用iTextSharp。我相信从iTextSharp站点获取它是最好的选择。@oded但是它的抛出错误类似于“名称空间表的类型不存在”。我已经修改了代码位