/ / LINQ та пейджинговий зв'язок за допомогою DataTable - не вдається пропустити роботу? - c #, linq, datatable

LINQ та пейджинговий зв'язок за допомогою DataTable - не вдається пропустити роботу? - c #, linq, datatable

Гаразд, це може бути нерозумним питанням, але я не можу це зрозуміти. Я думав, що я спробую LINQ проти DataTable. Я працював над моїм запитом, і зараз я намагаюсь запровадити якийсь простий пейджинговий файл.

DataTable dataTable = null;

dataTable = GetAllDataTables();

var query = from r in dataTable.AsEnumerable()
orderby r.Field<string>(Constants.fileName)
select r;

query.Skip(WPP_PAGE_SIZE * pageIndex).Take(WPP_PAGE_SIZE);

Моя проблема в тому, що я отримую помилку при запиті. Skip (...).

Помилка 1 "System.Data.OrderedEnumerableRowCollection " не містить визначення для "Пропустити" і немає способу розширення "Пропустити" прийняття першого аргументу типу "System.Data.OrderedEnumerableRowCollection" міг бути знайдений (ви відсутній a використовуючи директиву або збірку довідник?)

Посилання на мене:

  • Microsoft.SharePoint
  • Система
  • System.Core
  • System.Data
  • System.Data.DataSetExtensions
  • System.Web
  • System.Xml

Що мені не вистачає?

Відповіді:

7 для відповіді № 1

Тобі потрібно using System.Linq; у верхній частині вашого файлу.

Друга проблема полягає в тому, що вам потрібно призначити результат "Пропустити" та "Взяти", щоб інше, результат просто відкидається:

var query2 = query.Skip(WPP_PAGE_SIZE * pageIndex).Take(WPP_PAGE_SIZE);

2 для відповіді № 2
using System.Linq?