各位大侠...请帮忙看一下如下代码:..是一下实现下载的功能..所要下载的东西是存入在数据库中的...在如下代码中绑定DataGrid:
string conn = ConfigurationSettings.AppSettings["conn"];
string select = ConfigurationSettings.AppSettings["select"];
SqlConnection objSqlCon   =   new   SqlConnection(conn);   
SqlCommand  command = new SqlCommand(select,objSqlCon);   
objSqlCon.Open();   
FileList.DataSource   =   command.ExecuteReader();   
FileList.DataBind();   
objSqlCon.Close();   
在HTML代码页里做了一个超链的绑定列..
<asp:TemplateColumn HeaderText="查看">
<ItemTemplate>
<b><a href="ShowFile.aspx?ID=1">下载文件</a> </b>
</ItemTemplate>
</asp:TemplateColumn>

解决方案 »

  1.   

    然后在另一个页面中,下载..
    string sql="SELECT * FROM  TestFiles  WHERE  ID = '" + Request.QueryString["ID"] + "'";
    string conn = ConfigurationSettings.AppSettings["conn"];
    SqlConnection objSqlCon = new SqlConnection(conn);
    SqlCommand objSqlCom = new SqlCommand(sql,objSqlCon);
    try
    {
    objSqlCon.Open();
    SqlDataReader objRead = objSqlCom.ExecuteReader();
    if(objRead.Read())
    {
       Response.Clear();   
       Response.AddHeader("Content-Type",objRead["FileType"].ToString());   
       Response.BinaryWrite((byte[])objRead["MyFile"]);   
       Response.End();
    }
    objRead.Close();
    }
    catch(SqlException se)
    {
    Response.Write(se.Message);
    }
    finally
    {
    objSqlCon.Close();
    }请问:这样做有问题吗?为什么我单击下载以后..不能