【发布时间】:2014-03-07 13:42:07
【问题描述】:
我想在 sharepoint custm Web 部件中将我的页面导出为 pdf。我正在使用下面的代码导出为 pdf。当我单击导出按钮时,我得到以下错误。如何解决此错误?请帮帮我。
代码
protected void ExporttoPDF_Click(object sender, EventArgs e)
{
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=ExporttoPDF.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
this.Page.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();
}
错误
“/”应用程序中的服务器错误。 RegisterForEventValidation 只能在 Render() 期间调用; 说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
Exception Details: System.InvalidOperationException:
RegisterForEventValidation can only be called during Render();
来源错误:
在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。
堆栈跟踪:
[InvalidOperationException: RegisterForEventValidation can only be called during Render();]
System.Web.UI.ClientScriptManager.RegisterForEventValidation(String uniqueId, String argument) +11081278
System.Web.UI.WebControls.TextBox.AddAttributesToRender(HtmlTextWriter writer) +455
System.Web.UI.WebControls.WebControl.RenderBeginTag(HtmlTextWriter writer) +27
System.Web.UI.WebControls.TextBox.Render(HtmlTextWriter writer) +27
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +240
System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer) +42
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +240
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +240
System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer) +411
System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output) +87
System.Web.UI.HtmlControls.HtmlForm.RenderControl(HtmlTextWriter writer) +53
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +240
System.Web.UI.HtmlControls.HtmlContainerControl.Render(HtmlTextWriter writer) +42
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +240
System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +240
System.Web.UI.Page.Render(HtmlTextWriter writer) +38
Microsoft.SharePoint.WebPartPages.WikiEditPage.Render(HtmlTextWriter writer) +207
PayrollProject.PaySlip4Employee.PaySlip4EmployeeUserControl.btnPDF_Click(Object sender, EventArgs e) +425
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +115
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +140
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +29
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2981
版本信息:Microsoft .NET Framework 版本:2.0.50727.5472; ASP.NET 版本:2.0.50727.5474
【问题讨论】:
标签: c# asp.net .net sharepoint