Как получить последние 5 строк таблицы данных? Я пробовал что-то вроде этого:
var Long_bottom = LongSlection.Last(5);
Где LongSlection — это DataRow. Но у меня была ошибка, есть идеи?
Как получить последние 5 строк таблицы данных? Я пробовал что-то вроде этого:
var Long_bottom = LongSlection.Last(5);
Где LongSlection — это DataRow. Но у меня была ошибка, есть идеи?
LongSlection
является DataRow
, как вы ожидаете, что он вернет вам 2 строки? Я думаю, вам нужно добавить немного больше деталей к вопросу 05.06.2012 .AsEnumerable().Reverse().Take(5);
05.06.2012 Не уверен, что у вас здесь
var Long_bottom = LongSlection.Last(5);
Предполагая, что у вас есть DataTable и вы хотите получить последние 5 строк, вы можете сделать это через
datatable1.AsEnumerable().Reverse().Take(5);
Take
и Skip
возвращают определенное количество элементов (параметр - int), в то время как в случае Last
вы получаете последний элемент или вам нужен предикат для проверки условий или проверок в строке.
Как насчет
Datarow[] dr = dt.Rows.Cast<DataRow>().Skip(dt.Rows.Count - 5).ToArray();
ИЛИ
dt.Rows.Cast<DataRow>().Reverse().Take(5);
Здесь 5 — это последнее количество строк, которое нужно взять.
Это ДОЛЖНО сделать это. но это не проверено!
IEnumerable<DataRow> lastRows = table.AsEnumerable().Skip(table.Rows.Count - 2).ToList();
Or:
table.AsEnumerable().Reverse().Take(2);
Изменить: изменено, чтобы получить последние ДВА, в соответствии с запросом ОП.
Мне нужно CopyToDataTable()
чтобы добиться цели:
dt = dt.AsEnumerable().Reverse().Take(5).CopyToDataTable();