Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何为DataView设置不区分大小写的RowFilter_C#_Sql_Case Insensitive_Dataview_Rowfilter - Fatal编程技术网

C# 如何为DataView设置不区分大小写的RowFilter

C# 如何为DataView设置不区分大小写的RowFilter,c#,sql,case-insensitive,dataview,rowfilter,C#,Sql,Case Insensitive,Dataview,Rowfilter,我有一个datagrid,它的数据源是dataview。有一个文本框,用户可以用它键入过滤文本。我想使过滤器不区分大小写。 例如,键入的文本是“Tg” 我试过这个 Mydataview.RowFilter = "UPPER(COL) LIKE '%TG%'" 但这给了我一个无效操作的例外 然后我把它改成了 Mydataview.RowFilter = "COL LIKE '%tg%' or COL LIKE '%TG%'" 这是可行的,但并不涵盖所有情况。例如,如果一行为“Tg”,则将过滤掉

我有一个datagrid,它的数据源是dataview。有一个文本框,用户可以用它键入过滤文本。我想使过滤器不区分大小写。 例如,键入的文本是“Tg”

我试过这个

Mydataview.RowFilter = "UPPER(COL) LIKE '%TG%'"
但这给了我一个无效操作的例外

然后我把它改成了

Mydataview.RowFilter = "COL LIKE '%tg%' or COL LIKE '%TG%'"
这是可行的,但并不涵盖所有情况。例如,如果一行为“Tg”,则将过滤掉不需要的内容。 我想要的是,当用户输入“Tg”时,它将匹配任何数据与Tg,Tg,Tg,Tg,所有的组合


感谢

RowFilter
遵守数据集
区分大小写的

因此,请在表单加载方法中执行此操作:

默认情况下,
区分大小写
设置为
False

mydataset.CaseSensitive = false
概念证明:


选择两次名称,其中一个名称作为查找器,然后使用该列(不可见)来筛选行

谢谢,我没有使用dataset,我使用datatable,我尝试设置MyTable.CaseSensitive=false,不起作用为什么不编写所有可能的组合:“像“%tg%”这样的列或像“%tg%”这样的列或像“%tg%”这样的列或像“%tg%”这样的列太长了(虽然可能)。如果用户键入“test”,那么我有16个组合。如果可能的话,我会尽量避免这种情况。谢谢,我刚刚尝试使用datatable,它很有效。我以前尝试时犯了一个错误。