/ / Wyświetlanie zapytania LINQ w DataGridView - c #, linq, datagridview

Wyświetlanie zapytania LINQ w DataGridView - c #, linq, datagridview

Mam problem z wyświetleniem tego zapytania LINQ w widoku dataGridview:

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();

Wydajność: wprowadź opis obrazu tutaj

Odpowiedzi:

0 dla odpowiedzi № 1

Problem polega na tym, że gridview potrzebuje jakiegoś sposobuuzyskania dostępu do informacji o tym, jakie kolumny są potrzebne, aby skutecznie powiązać dane. Jeśli ma obiekt z właściwościami dla każdej kolumny, może działać, ale go nie masz. DataTable implementuje taki interfejs, IEnumerable<DataRow> nie. Najprostszą opcją jest umieszczenie wszystkich tych wierszy z powrotem w DataTable aby wiązanie mogło działać. Wystarczy wymienić ToList z CopyToDataTable (może być konieczne dodanie odpowiedniego using).