FilterExpression从TextBox而不是LIKE返回精确的值

本文关键字:返回 LIKE TextBox FilterExpression | 更新日期: 2023-09-27 18:21:44

我正在处理一个通过ObjectDataSource在GridView中显示的表。我还有一个下拉列表、一个文本字段和一个按钮,可以在GridView中过滤表。这是我用来启用过滤的代码:

if (DropDownList1.SelectedValue.ToString() == "Name")
    {
        ObjectDataSource1.FilterExpression = "Name LIKE '%" + TextBox1.Text + "%' ";
    }
 else if (DropDownList1.SelectedValue.ToString() == "Result")
    {
        ObjectDataSource1.FilterExpression = "convert(Result,'System.String')LIKE '%" + TextBox1.Text + "%'";
    }

现在我注意到,在Result列的情况下,如果我搜索0,它会显示所有带有0的结果,因此10、20、30等,而不仅仅是0条目。我试过用==代替LIKE,但没用。如何确保Result过滤器只返回TextBox的EXACT值,有什么建议吗?

FilterExpression从TextBox而不是LIKE返回精确的值

删除%标记。它会给你严格相等的价值使用Like('TEXT')