将值从gridview传递到存储过程

时间:2010-08-24 08:56:46

标签: c#

我有存储过程获取数据,其中Id = @id和传递给gridview存储的@id我尝试这样做但我无法取悦任何人帮助我

protected void GridView1_RowDataBound(object sender,GridViewRowEventArgs e)     {

    using (SqlConnection con = Connection.GetConnection())
    {
        string Sql = "Select Logo From Model where Id=@Id";
        SqlCommand com = new SqlCommand(Sql, con);
        com.Parameters.Add(Parameter.NewInt("@Id", GridView1.SelectedDataKey));
        com.CommandType = CommandType.Text;
        SqlDataReader dr = com.ExecuteReader();
        if (dr.Read())
        {
            string Img2 = dr["Logo"].ToString();
            if (Img2 == System.DBNull.Value.ToString())
            {
                Img.Visible = false;
            }
        }


    }
}

1 个答案:

答案 0 :(得分:0)

不确定你到底想做什么。将为gridview中存在的每一行调用GridView1_RowDataBound - 您是否要为gridview中的每一行运行查询以检索数据?如果是,那么您可以使用e.Row.DataItem属性来获取基础数据(如果使用数据表/视图或对象实例,则使用DataRowView,如果使用对象数据源)。您还可以使用e.Row.DataItemIndex查找数据源以获取相应的数据行并从中获取ID。