0
後,我有一個UpdatePanel,顯示文件列表的GridView控件。 GridView中的一列是一個打開列出的PDF文件的按鈕。的UpdatePanel退出響應Response.TransmitFile
<asp:UpdatePanel runat="server" ID="upPurchaseOrder">
<ContentTemplate>
<asp:GridView ID="gvPurachaseOrder" runat="server" AutoGenerateColumns="False" DataSourceID="odsPurchaseOrders"
EnableModelValidation="True" DataKeyNames="PurchaseOrderID,PromotionID" onrowcreated="gvPurachaseOrder_RowCreated">
<Columns>
<%--BoundFields omitted--%>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:Button ID="btnPurchaseOrderOpen" runat="server" Text="Open" CommandName="Open"
CommandArgument='<%# Eval("FilePath") %>' oncommand="btnPurchaseOrderOpen_Command" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
在RowCreated事件我寄存器btnPurchaseOrderOpen作爲回發控制,所以它會導致完全回發。
在按鈕的事件處理程序,我打開與Response.TransmitFile方法的文件。
Response.Clear();
Response.ContentType = GetConentTypeForFile(fi.Extension);
Response.AddHeader("content-disposition", String.Format("attachment;filename={0}", fi.Name));
Response.TransmitFile(fi.FullName);
Response.End();
我的問題是,文件打開後(它正確打開)UpdatePanel停止更新。我可以點擊其他按鈕,他們從來沒有回來後同步或異步。我有一種感覺,這個問題是關係到迴應,但我不知道如何解決它。