G. *_* LC 2 c# datatable select
我有一个包含几列的数据表。其中一列具有特定值,我想用它来告诉程序要么给我该行,要么告诉它我不想要该行。
我的具体情况是该列名为“状态”,并且某些内容已批准。因此,如果“状态”列中的值不是“已批准”,我想要它,请不要打扰我。
在这种情况下(但相反)我通常做的只是使用类似的东西:
myDataTable.Select("Status = 'APPROVED'");
Run Code Online (Sandbox Code Playgroud)
给我所有批准的东西。但如果我尝试用我的直觉写
myDataTable.Select("Status != 'APPROVED'");
Run Code Online (Sandbox Code Playgroud)
我明白了
Exception thrown: 'System.Data.SyntaxErrorException' in System.Data.dll
Run Code Online (Sandbox Code Playgroud)
注意:从我的调试尝试来看,唯一给我带来问题的是 != 运算符。我用 try / catch 包装该语句,异常如下:
Cannot interpret token '!' at position 8.
Run Code Online (Sandbox Code Playgroud)
所以使用该输出我找到了这个链接。但这似乎对我没有多大帮助,按照他们的建议进行尝试(我的绝望尝试):
myDataTable.Select("Status '!'= 'APPROVED'");
Run Code Online (Sandbox Code Playgroud)
或者
myDataTable.Select("Status '!=' 'APPROVED'");
Run Code Online (Sandbox Code Playgroud)
首先对我来说根本没有意义,更重要的是不起作用,这对我来说似乎是显而易见的。
只需使用<>
myDataTable.Select("Status <> 'APPROVED'");
Run Code Online (Sandbox Code Playgroud)