且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

MS图表-使用C#在SSIS中无法正确显示导出到Word

更新时间:2023-02-08 07:45:12

添加一个用于导出的按钮
在页面上添加Export.aspx.

在按钮中单击
Add one button for export
Add on page Export.aspx.

in button click
CT.SaveImage("D:\\MyChart.png", ChartImageFormat.Png);
this.ClientScript.RegisterClientScriptBlock(this.GetType(), "Export" + DateTime.Now.ToString(), "<script>window.open(''Export.aspx?Image=" +MyChart  + "'',target=''_blank'',''toolbar=no,location=no,height=800px,width=900px,resizable=no,scrollbars=no'');</script>");




在导出页面设计"中




In Export page design

<asp:Panel ID="pnlExport" runat="server" >

 <asp:image id="imgTest" runat="server" xmlns:asp="#unknown" />



在导出页面代码"后面的



In Export page code behind

protected void Page_Load(object sender, EventArgs e)
  {
if (Request.QueryString["Image"] != null
{
imgTest.ImageUrl = Request.QueryString["Image"].Tostring() + ".png";
 Response.Clear(); 
       Response.AddHeader("content-disposition", "attachment; filename=MyChart.doc");
Response.Charset = "";  
Response.ContentType = "application/vnd.ms-word";  
StringWriter sw= new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);   
pnlExport.RenderControl(hw);
  Response.Output.Write(sw.ToString());

 FileInfo fiDelete = new FileInfo(Request.QueryString["Image"].Tostring() + ".png");
        if (fiDelete.Exists)
        {
            fiDelete.Delete();
        }
    Response.Flush();
    Response.End();  

}
}