File not downloading from folder
<p>I have a problem with file download. I have a grid which shows the file name and a link to download that file. 
This is the code of my grid.</p>

<pre><code>&lt;asp:GridView ID="gv7" runat="server" AllowPaging="True" CssClass="tbl_green_parrot"
PageSize="5" Width="100%" AutoGenerateColumns="False" EmptyDataText="No Scheme data available" DataKeyNames="FilePath" OnPageIndexChanging="gv7_PageIndexChanging"             onrowdatabound="gv7_RowDataBound"&gt;
  &lt;AlternatingRowStyle CssClass="tbl_green_parrot1" /&gt;
 &lt;FooterStyle CssClass="tbl_green_parrotfoot" /&gt;
 &lt;PagerStyle CssClass="tbl_green_parrotpager" /&gt;
 &lt;SelectedRowStyle CssClass="tbl_green_parrotselect" /&gt;
 &lt;EmptyDataRowStyle CssClass="tbl_green_parrotempty" /&gt;
 &lt;Columns&gt;
   &lt;asp:TemplateField HeaderText="File Name"&gt;
   &lt;ItemTemplate&gt;
   &lt;asp:HyperLink ID="lnkFile" Target="_blank" CausesValidation="false" runat="server"
   Text='&lt;%# Bind("DisplayName") %&gt;' NavigateUrl='&lt;%# Bind("FilePath") %&gt;' /&gt;
   &lt;/ItemTemplate&gt;
   &lt;/asp:TemplateField&gt;
   &lt;asp:TemplateField HeaderText="Download" ItemStyle-Width="25px" ItemStyle-HorizontalAlign="Center"&gt;
   &lt;ItemTemplate&gt;
   &lt;a id="lnkDLoad" href='&lt;%# Bind("FilePath") %&gt;' runat="server" target="_blank"&gt;
   &lt;img src="Images/download.png" alt="Download" /&gt;
   &lt;/a&gt;
   &lt;/ItemTemplate&gt;
   &lt;ItemStyle HorizontalAlign="Center" Width="25px" &gt;&lt;/ItemStyle&gt;
   &lt;/asp:TemplateField&gt;
 &lt;/Columns&gt;
</code></pre>

<p></p>

<p>Here I bind the filepath to the <code>&lt;a&gt;</code> tag. This code is running when I have the file in the same root folder in the website. But when I attempt to download the file which is inside the folder it doesn't download.</p>

<p>The code behind for downloading:</p>

<pre><code>DataTable new_dt = new DataTable();
    new_dt.Columns.Add("DisplayName");
    new_dt.Columns.Add("FileName");
    new_dt.Columns.Add("FilePath");
    string Query = "SELECT DisplayName,FilePath,Universal From DistScheme";
    dt = DataAccessLayer.DAL.getFromDataTable(Query);
    string filename = "";
    if (dt.Rows.Count &gt; 0)
    {
        for (int i = 0; i &lt; dt.Rows.Count; i++)
        {
            DataRow new_dr = new_dt.NewRow();
            if (dt.Rows[i]["Universal"].ToString() == "False")
            {
                filename = DistributorID + "_" + dt.Rows[i]["FilePath"].ToString();
            }
            else
            {
                filename = dt.Rows[i]["FilePath"].ToString();
            }
            string filepath = Server.MapPath("Uploads/Scheme/") + filename;
            if (File.Exists(filepath))
            {
                new_dr["DisplayName"] = dt.Rows[i]["DisplayName"].ToString();
                new_dr["FileName"] = filename;
                new_dr["FilePath"] = filepath;
                new_dt.Rows.Add(new_dr);
            }
        }
    }
    gv7.DataSource = new_dt;
    gv7.DataBind();
</code></pre>

<p>How do I solve this problem?</p>
