У мене виникають проблеми з відображенням цього запиту 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
)