2013-10-27 147 views
0

以前我可以下載GridView1_RowCommand從GridView和代碼文件下載鏈接

代碼

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) 
    { 
     if (e.CommandName == "cmd") 
     { 
      string filename = e.CommandArgument.ToString(); 
      string path = MapPath("~/Docfiles/" + filename); 
      byte[] bts = System.IO.File.ReadAllBytes(path); 
      Response.Clear(); 
      Response.ClearHeaders(); 
      Response.AddHeader("Content-Type", "Application/octet-stream"); 
      Response.AddHeader("Content-Length", bts.Length.ToString()); 
      Response.AddHeader("Content-Disposition", "attachment; filename=" + 
      filename); 
      Response.BinaryWrite(bts); 
      Response.Flush(); 

但現在 我創建一個表,並顯示出一些數據,我想在一個下載鏈接表 這裏是表的代碼...

<div class="CSSTableGenerator" > 
      <table border="0" width="100%" cellpadding="0" cellspacing="0" 
       id="results"> 
      <asp:Repeater ID="Repeater1" runat="server"> 
      <HeaderTemplate> 
       <tr> 
        <td> 
         Document ID 
        </td> 
        <td > 
         Document Name 
        </td> 
        <td> 
         File Uploaded 
        </td> 
        <td> 
         Document Type 
        </td> 

       </tr> 
       </HeaderTemplate> 
       <ItemTemplate> 
       <tr> 
       <%--<td><asp:LinkButton ID="LinkButton1" runat="server" 
       CommandArgument='<%# Eval("FileUploaded") %>' 
      CommandName="cmd">Download</asp:LinkButton></td>--%> 
       <td><%#DataBinder.Eval(Container.DataItem,"DocumentID") %></td> 

       <td><%#DataBinder.Eval(Container.DataItem, " 
        DocumentName")%> </td> 
       <td><%#DataBinder.Eval(Container.DataItem, 
           "FileUploaded")%></td> 
       <td><%#DataBinder.Eval(Container.DataItem, 
         "Document")%></td> 
       </tr> 
       </ItemTemplate> 
       </asp:Repeater> 
       <div id="pageNavPosition" > 
       </div>    
      </table> 
      </div> 

現在如何添加在表中的下載鏈接,我寫的東西,而不是GridView1_RowC ommand?

任何解決方案?

+0

<td><a href="/Docfiles/<%#DataBinder.Eval(Container.DataItem, "DocumentName")%>">Download</a></td> 

GridView1_RowCommand我不知道你想達到的目標。這可能是有幫助的http://www.w3schools.com/tags/att_a_href.asp – FeliceM

+0

我嘗試添加表中的下載按鈕...當我點擊下載文件將下載 – user2883796

回答

1

據我所知,您將文件存儲在某個名爲「Docfiles」的文件夾中。 所有你需要在ItemTemplate中做添加超鏈接這個文件並不需要在這種情況下

+0

但我如何在下載按鈕代碼。 ..when我點擊下載蒼蠅將下載 – user2883796

+0

你在哪裏存儲文件? –

+0

在Docfiles..and顯示在表中,當用戶點擊下載該文件時將被下載 – user2883796