我继承了下面的代码,但我很困惑,因为代码工作正常,但我不相信它是正确的。我之前没有用过LIKE所以我无法决定是否应该为改变它而烦恼。这看起来怎么样?
代码用于db中的过滤器,它检查X值是否包含Y值,在X中找到X *(例如,在Fun和Fan中匹配将是F *),并且X不包含Y.
感谢您的意见。
foreach (ListViewItem item in listView1.Items)
{
strStuff += item.Text;
object o = item.SubItems[1].Tag;
switch ((int)item.SubItems[1].Tag)
{
case 0:
strStuff += " LIKE '%" + item.SubItems[2].Text + "%'"; //contains
break;
case 1:
strStuff += " LIKE '" + item.SubItems[2].Text + "'"; //allows * wildcard
break;
case 2:
_strCriteria += " NOT LIKE '%" + item.SubItems[2].Text + "%'"; //doesn't contain
break;
default:
strStuff += "\"" + item.SubItems[2].Text + "\"";
break;
}
strStuff += " And ";
}