请告诉我是否可以在DataTable的Select方法中使用“Not Like”运算符作为过滤表达式? 我的意思是这样的:
MyDataTable.Select("MyField Not Like '" + MyValue + "%'");
答案 0 :(得分:1)
是的,这很有效。有关所有可能表达式的列表,请参阅http://msdn.microsoft.com/en-us/library/system.data.datacolumn.expression.aspx
此处还有一个展示此作品的示例程序。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
DataTable table = new DataTable();
// Create the first column.
DataColumn textColumn = new DataColumn();
textColumn.DataType = System.Type.GetType("System.String");
textColumn.ColumnName = "text";
// Create the second column.
DataColumn priceColumn = new DataColumn();
priceColumn.DataType = System.Type.GetType("System.Decimal");
priceColumn.ColumnName = "price";
priceColumn.DefaultValue = 50;
// Add columns to DataTable.
table.Columns.Add(textColumn);
table.Columns.Add(priceColumn);
DataRow row = table.NewRow();
row["text"] = "bc";
table.Rows.Add(row);
DataRow[] rows = table.Select("text not like 'a%'");
Console.WriteLine(rows.Count());
}
}
}
答案 1 :(得分:-1)
你有没有试过这种表达方式????
filterexp = "fieldvalue!=value";
DataRow[] row = dt.Select(filterexp);
这可能对您有所帮助