我想根据文本框过滤数据网格上的行,并且我正在使用存储过程,我的代码如下:
我在存储过程中编写了查询以供选择:
if @operation =1
select * from Item_Configuration where itemId like '%' + itemId + '%'
和 C# 代码是
private void btnSrch_Click(object sender, EventArgs e)
{
SqlConnection conn1 = new SqlConnection();
try
{
SqlCommand selectItem = new SqlCommand("Item_Configuration_SP", conn1);
selectItem.CommandType = CommandType.StoredProcedure;
if (itemId.Text=="")
{
selectItem.Parameters.Add("@operation", SqlDbType.VarChar);
selectItem.Parameters["@operation"].Value = 1;
selectItem.Parameters.Add("@itemId", SqlDbType.VarChar);
selectItem.Parameters["@itemId"].Value = itmId.Text;
SqlDataReader myReader = selectItem.ExecuteReader();
List<Item> list = new List<Item>();
while (myReader.Read())
{
if (myReader.HasRows)
{
Item item = new Item();
item = MapItem(myReader, item);
list.Add(item);
}
}
dataGridView1.DataSource = list;
}
}
}
现在我在网格上得到所有记录记录没有根据文本框过滤我找不到我错的地方请帮助