c# - Issue when trying to download file using Update Panel -
i checked browser isn't blocking popups seem have error in code can't seem figure out whats problem
protected void btndownload_click(object sender, eventargs e) { var context = new hmanginternationalcontext("hmanginternational"); var id = convert.toint32((sender button).commandargument); var song = context.albumentries.where(x => x.id == id).firstordefault(); if (song != null) { response.clear(); response.addheader("content-type", "application/octet-stream"); response.addheader("content-disposition", "attachment;filename=" + httputility.urlencode(song.filename)); response.binarywrite(song.data); response.end(); udpfiles.update(); } }
i tried version size included didn't work either, silent discard, maybe see error in code ?
here asp.net code (this works)
<asp:updatepanel runat="server" id="udpfiles"> <triggers> <asp:postbacktrigger controlid="gdvsongs" /> </triggers> <contenttemplate> <h1 class="hmang-page-header">tracks<asp:button runat="server" text="add new track" onclientclick="show();" id="btnadd" visible="false" class="btn btn-primary set-right"></asp:button></h1> <asp:gridview id="gdvsongs" runat="server" autogeneratecolumns="false" cssclass="table table-dark table-condensed table-bordered"> <columns> <asp:templatefield> <headertemplate> track name </headertemplate> <itemtemplate> <%# eval("name") %> </itemtemplate> </asp:templatefield> <asp:templatefield> <headertemplate> file </headertemplate> <itemtemplate> <%# eval("filename") %> </itemtemplate> </asp:templatefield> <asp:templatefield> <itemtemplate> <asp:button text="download" runat="server" cssclass="btn btn-primary" id="btndownload" commandargument='<%# eval("id") %>' onclick="btndownload_click" /> </itemtemplate> </asp:templatefield> </columns> </asp:gridview> </contenttemplate> </asp:updatepanel>
an educated guess: happens inside update panel, doesn't it?
this happened me once, reason no error/exception thrown nothing wrong in end. file data goes front-end, rejects render content of update panel.
if that's case, have put control fires postback (i.e. btndownload
)as sync trigger of update panel:
<triggers> <asp:postbacktrigger controlid="gdvsongs" /> </triggers>
Comments
Post a Comment