У меня есть DataTable с кучей строк в нем, то первый столбец является Int32
, и я хочу, чтобы выполнить простой выбор, как:выполняет отборное на переменном токе # DataTable
select * from MyDataTable where column1 = 234
У меня есть DataTable с кучей строк в нем, то первый столбец является Int32
, и я хочу, чтобы выполнить простой выбор, как:выполняет отборное на переменном токе # DataTable
select * from MyDataTable where column1 = 234
если вы говорите of.Data.DataTable, вы можете использовать datatable.Rows.Find для поиска строки по primaryKey или datatable.Select для получения массива строк, удовлетворяющих вашему условию.
// По DataTable первичный ключ
datatable.Rows.Find(234);
// компаундом первичный ключ
datatable.Rows.Find(234, 1, 4);
// по Выбрать
datatable.Select("column1=234");
// компаундом Выбрать
datatable.Select("column1=234 AND column2=1");
Попробуйте это, чтобы получить результат в виде строки массива:
DataRow[] rows = myDataTable.Select("column1 = 234");
Или это, чтобы получить DataView:
DataView myDataView = myDataTable.DefaultView;
myDataView.RowFilter = "column1 = 234";
Проверить эту ссылку:
http://msdn.microsoft.com/en-us/library/b51xae2y(VS.71).aspx
var result = from row in table.AsEnumerable()
where row[0].Equals(42)
select row;
Or
var result = table.AsEnumerable().Where(row => row[0].Equals(42));
При условии, что он использует C# 3, конечно :) –