Bạn có thể sử dụng Linq
để truy vấn dữ liệu hoặc dataview. Ví dụ, giả sử cột của bạn là kiểu string:
var condition = yourDataTable.AsEnumerable()
.Any(r => r.Field<string>("GBA_Nbr_GBAccount") == "52");
var condition = yourDataView.Cast<DataRowView>()
.Any(rv => rv.Row.Field<string>("GBA_Nbr_GBAccount") == "52");
Nếu cột là một số nguyên, chỉ cần thay đổi Field<string>
-Field<int>
và so sánh với một số nguyên, không phải là một chuỗi
var condition = yourDataTable.AsEnumerable()
.Any(r => r.Field<int>("GBA_Nbr_GBAccount") == 52);
var condition = yourDataView.Cast<DataRowView>()
.Any(rv => rv.Row.Field<int>("GBA_Nbr_GBAccount") == 52);
ứng dụng Ví dụ sử dụng chuỗi cột:
static void Main(string[] args)
{
DataSet dataset = new DataSet();
dataset.Tables.Add(new DataTable("table1"));
dataset.Tables[0].Columns.Add(new DataColumn("Value", typeof(string)));
dataset.Tables[0].Rows.Add("10");
dataset.Tables[0].Rows.Add("52");
DataTable table = dataset.Tables[0];
DataView view = table.DefaultView;
var condition1 = table.AsEnumerable().Any(r => r.Field<string>("Value") == "52");
var condition2 = view.Cast<DataRowView>().Any(rv => rv.Row.Field<string>("Value") == "52");
Console.WriteLine(String.Format("Result querying datatable: '{0}'. Result using dataview:'{1}'", condition1, condition2));
Console.ReadLine();
}
Nếu bạn đang thực sự sử dụng chuỗi cho cột, hãy kiểm tra khoảng trắng và áp dụng cắt nếu cần.
Nguồn
2013-06-21 09:10:32
Bạn đang tìm kiếm somthing như thế này http://msdn.microsoft.com/en-us/library/yth8t382%28v=vs.90%29.aspx? – Karthik