Filtrowanie DataTable przy pomocy LINQ

0

Witam,
Mam problem (pewnie banalny) z filtrowaniem tabeli DataTable przy pomocy LINQ. Otoż chcę wykonać operację:

IEnumerable<DataRow> query = from thing in _thingsTable.AsEnumerable() where thing.Field<int>("thing_id") = selectedRow select thing;

gdzie selectedRow jest parametrem przesyłanym do metody. I przy tak napisanym kodzie otrzymuję dwa błędy:

  • Cannot implicitly convert type 'int' to 'bool'

  • The left-hand side of an assignment must be a variable, property or indexer

Co jest ciekawe, ponieważ, przyrównuję ze sobą dwa parametry typu int, a otrzymuje error o rzutowaniu na bool...

Cel jest taki aby z tabeli liczącej powiedzmy >100 wierszy, wyciagnac te, które spełniaja warunek . Errory skupiają się na thing.Field<int>("thing_id") = selectedRow. Pomoże ktoś rozwiązać ten problem?

0

Moja nadgorliwość jest niesamowita. Problemem był znak równości. Zamiast

thing.Field<int>("thing_id") = selectedRow

powinno być

thing.Field<int>("thing_id") == selectedRow

Diabeł jak zwykle tkwi w szczegółach...

0

podziękuj składni C# że dostałeś błąd. w C++ taki kod by przeszedł, i byś się zastanawiał dlaczego źle działa ;-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1