查询字符串字段的过滤器设计

时间:2010-06-14 09:16:40

标签: c# asp.net mysql

我表中的字段可以包含任意字符串。在用户界面上,有一个下拉列表,其中包含

等选项

全部,Value1,Value2

结果按选定的选项值进行过滤。到目前为止,这很容易,并且向UI添加新过滤器不是问题。我的存储过程不需要更改。现在我想在这里有一个“Others”选项,它将返回没有列值为Value1或Value2的行。

显然,我的查询中需要“not in”运算符,并且会使维护变得困难,因为值列表可能会更改

有任何建议,设计提示吗?

2 个答案:

答案 0 :(得分:2)

如果您的选项表可能有一个名为IsOther的附加列,那么您的查询可能只是WHERE IsOther = 1而不是使用NOT IN。

答案 1 :(得分:2)

others案例制作单独的存储过程,并在所选选项其他时调用它。将列表的内容作为输入传递给过程:通过这种方式,您只需要在一个位置更新列表。