尝试在Asp.Net应用程序中呈现IFrame的内容。 这就是我现在所拥有的。
private void ExportToExcel(Control control)
{
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/vnd.ms-excel";
Response.AddHeader("content-disposition", "attachment;filename=IT Status "+ReportType.Text+".xls");
Response.Charset = "";
this.EnableViewState = false;
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
control.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
}
我的IFrame看起来像这样
<iframe id="ReportBody" runat="server" src="ITTasksByComponent.aspx" scrolling="auto" visible="true" width="1000" height="1000" />
当方法运行时,我得到一个带有
的excel doc
<iframe id="ReportBody" src="ITTaskByAssignment" ></iframe>
我怀疑这是我必须使用ajax在另一个页面中运行客户端才能正常工作但是如果有另一个.NET Serverside解决方案可以免费...
答案 0 :(得分:1)
我猜你期望在服务器端评估src
属性。要做到这一点,您需要使用WebClient并自己获取。这样的事可能适合你。
byte[] data = new WebClient.DownloadData(ResolveUrl("~/ITTasksByComponent.aspx");
Response.OutputStream.Write(data, 0, data.Length);