Asp.Net Gridview Dosya İndirme İşlemi

Asp.net ile dosyaları yükleme ve yüklenen dosyalarının isimlerini veri tabanına kaydetme işlemini Asp.Net Dosya Yükleme ve Dosya Adını ve Yolunu Veritabanı’na Kaydetme konusunda anlatmıştık; şimdi yüklenen dosyaları bir gridview içerisinde gösterip dosyalarını indirme işlemini yapalım. Bir önceki örnekte kullandığımız veritabanı ve dosyayapısını kullanarak o örnek üzerinden gideceğiz..
Bunun için sayfamıza bir gridview ekleyip dosyaları indirmek içinde bir link vereceğiz
gridviewdosyaindirme

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>www.aspnetornekleri.com</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
            DataKeyNames="id" DataSourceID="AccessDataSource1" OnRowCommand="GridView1_RowCommand">
            
            <Columns>
            <asp:TemplateField HeaderText="Dosya İndir">
    <ItemTemplate>
         <asp:HyperLink runat="server" ID="downloaddosya" NavigateUrl='<%# Eval("dosyaadi","~/yuklenendosyalar/{0}") %>'>Download</asp:HyperLink>
   </ItemTemplate>
</asp:TemplateField>
                <asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" 
                    ReadOnly="True" SortExpression="id" />
                <asp:BoundField DataField="dosyaadi" HeaderText="dosyaadi" 
                    SortExpression="dosyaadi" />
                <asp:BoundField DataField="aciklama" HeaderText="aciklama" 
                    SortExpression="aciklama" />
                         </Columns>
                    </asp:GridView>
        <asp:AccessDataSource ID="AccessDataSource1" runat="server" 
            DataFile="~/App_Data/dosyalar.accdb" SelectCommand="SELECT * FROM [dosya]">
        </asp:AccessDataSource>
    </div>
    </form>
</body>
</html>

Dosyaları indirebilmek için gridview içerisine bir download alanı ekliyoruz. NavigateUrl=’<%# Eval("dosyaadi","~/yuklenendosyalar/{0}") %>‘ satırı ile kullanıcının dosyaları indirlebilmesi için linkleri oluşturuyoruz.
gridviewdosyaindirme1