Asp.net 将包含图像的页面导出到Excel
我有一个包含2个gridview和2个mschart的页面。ı要将此页面导出到excel。为此,我将这些控件放入一个面板并编写以下代码:Asp.net 将包含图像的页面导出到Excel,asp.net,rendering,export-to-excel,Asp.net,Rendering,Export To Excel,我有一个包含2个gridview和2个mschart的页面。ı要将此页面导出到excel。为此,我将这些控件放入一个面板并编写以下代码: Response.Clear(); Response.ContentType = "application/vnd.msexcel"; Response.AddHeader("content-disposition", "attachment; filename=rapor.xls"); Response.Con
Response.Clear();
Response.ContentType = "application/vnd.msexcel";
Response.AddHeader("content-disposition", "attachment; filename=rapor.xls");
Response.ContentEncoding = System.Text.Encoding.Default;
System.IO.StringWriter stringWrite = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
panel1.RenderControl(htmlWrite);
Response.Write(stringWrite.ToString());
Response.End();
当这段代码运行时,除了图表之外,一切都正常。他们不会变得优秀。我该怎么做呢?不是100%确定,但我猜这些图表是写入内存以显示在页面上的,因此它们在请求后消失 HTML不允许在代码中嵌入图像,您必须引用外部文件 选项:
不是100%确定,但我猜这些图表是写入内存以显示在页面上的,所以它们在请求后消失 HTML不允许在代码中嵌入图像,您必须引用外部文件 选项:
请尝试以下代码。我已经在
本地IIS
进行了测试,它工作正常,并且在网格数据顶部包含了类似标题图像/徽标的图像。您必须将图表作为图像包含在内
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "attachment; filename=test.xls;");
StringWriter stringWrite = new StringWriter();
HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
dgrExport.DataSource = dtExport;
dgrExport.DataBind();
dgrExport.RenderControl(htmlWrite);
string headerTable = @"<Table><tr><td><img src=""D:\\Folder\\1.jpg"" \></td></tr></Table>";
Response.Write(headerTable);
Response.Write(stringWrite.ToString());
Response.End();
Response.ContentType=“应用程序/vnd.ms excel”;
AddHeader(“内容处置”、“附件;文件名=test.xls;”);
StringWriter stringWrite=新建StringWriter();
HtmlTextWriter htmlWrite=新的HtmlTextWriter(stringWrite);
dgrExport.DataSource=dtExport;
dgrExport.DataBind();
dgrExport.RenderControl(htmlWrite);
字符串headerTable=@“”;
响应。写入(headerTable);
Response.Write(stringWrite.ToString());
Response.End();
您可以根据需要调整图像的高度和宽度。
标签需要相同的高度和宽度设置。请尝试以下代码。我已经在本地IIS
进行了测试,它工作正常,并且在网格数据顶部包含了类似标题图像/徽标的图像。您必须将图表作为图像包含在内
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("Content-Disposition", "attachment; filename=test.xls;");
StringWriter stringWrite = new StringWriter();
HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);
dgrExport.DataSource = dtExport;
dgrExport.DataBind();
dgrExport.RenderControl(htmlWrite);
string headerTable = @"<Table><tr><td><img src=""D:\\Folder\\1.jpg"" \></td></tr></Table>";
Response.Write(headerTable);
Response.Write(stringWrite.ToString());
Response.End();
Response.ContentType=“应用程序/vnd.ms excel”;
AddHeader(“内容处置”、“附件;文件名=test.xls;”);
StringWriter stringWrite=新建StringWriter();
HtmlTextWriter htmlWrite=新的HtmlTextWriter(stringWrite);
dgrExport.DataSource=dtExport;
dgrExport.DataBind();
dgrExport.RenderControl(htmlWrite);
字符串headerTable=@“”;
响应。写入(headerTable);
Response.Write(stringWrite.ToString());
Response.End();
您可以根据需要调整图像的高度和宽度。
标签需要相同的高度和宽度设置