/ / Відображення запиту LINQ в DataGridView - c #, linq, datagridview

Відображення запиту LINQ в DataGridView - c #, linq, datagridview

У мене виникають проблеми з відображенням цього запиту LINQ у перегляді даних:

var result = from myrow in MydataTable.AsEnumerable()
where liste.Any(x => myrow.Field<string>("ID").ToUpper().Contains(x.ToUpper()))
select myrow;
MyGrigdView.DataSource = result.Tolist();

Вихід: введіть опис зображення тут

Відповіді:

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

Проблема в тому, що gridview потребує певного шляхуотримання доступу до інформації про те, які стовпці є для неї, щоб ефективно зв'язувати дані. Якщо він має об'єкт з властивостями для кожного стовпця, він може працювати, але ви не маєте цього. Якщо вся колекція реалізує заданий інтерфейс, який пояснює, які стовпці є і як їх отримати, то він може працювати. DataTable реалізує такий інтерфейс, IEnumerable<DataRow> не. Найпростіший варіант тут, швидше за все, поверне всі ці рядки назад DataTable так що зв'язування може функціонувати. Просто замініть ToList з CopyToDataTable (Вам може знадобитися додати відповідне using)