我有存储过程获取数据,其中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;
}
}
}
}
答案 0 :(得分:0)
不确定你到底想做什么。将为gridview中存在的每一行调用GridView1_RowDataBound - 您是否要为gridview中的每一行运行查询以检索数据?如果是,那么您可以使用e.Row.DataItem
属性来获取基础数据(如果使用数据表/视图或对象实例,则使用DataRowView,如果使用对象数据源)。您还可以使用e.Row.DataItemIndex
查找数据源以获取相应的数据行并从中获取ID。