下面的代码可以让我下载一个Word文档…..
Try Response.BufferOutput = True HttpContext.Current.Response.Clear() HttpContext.Current.Response.Charset = "" HttpContext.Current.Response.ContentType = "application/msword" HttpContext.Current.Response.AddHeader("Content-Disposition","inline;filename=myfile.doc") HttpContext.Current.Response.Write(s) 'HttpContext.Current.Response.End() HttpContext.Current.ApplicationInstance.CompleteRequest() HttpContext.Current.Response.Flush() Catch ex As Exception Response.Write(ex.Message) End Try
但是,只要我添加一个UpdatePanel – 它没有下载文件,没有生成错误?阅读后,我添加了一个触发器,其ControlID值设置为开始创建Word doc文件的按钮.我已经尝试了几种代码组合,但似乎没有任何效果.有关如何缩小范围的任何帮助?我也调试了,没有错误显示.我检查了我的下载文件夹 – 没有任何东西,尝试设置无缓存(Response.Cache.SetCacheability(HttpCacheability.NoCache)),并没有工作.一旦我删除UpdatePanel,那么一切似乎都有效?
<asp:UpdateProgress ID="ProgressUpdate" AssociatedUpdatePanelID="UpdatePanel1" runat="server"> <ProgressTemplate> <img alt="progress" src="../images/loading.gif" /> </ProgressTemplate> </asp:UpdateProgress> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <Triggers> <asp:PostBackTrigger ControlID="buttonDownloadFile" /> </Triggers> <ContentTemplate> ..