Linq: wählen Sie, wo in der Liste<string>

Struggeling mit einigen LinqToExcel Filterung hier...

Ive bekam ein List<string> columnsToFilter enthält 9 Saiten, und mit diesem möchte ich die Daten herausgefiltert, die für bestimmte Spalten in einer List<Row>, wo Row enthält die Eigenschaften

IEnumerable<string> ColumnNames
Cell this[string columnName]

Also: List<Row> hat, sagen wir 30 Zeilen mit jeweils 12 ColumnNames. Ich möchte nun filtern, dass List<Row> mit List<string> columnsToFilter so dass ich am Ende mit einem List<Row> von 30 Zeilen und 9 ColumnNames.

Kann ich die Daten auswählen, die für eine Spalte von quering der columnname:

var result = content.Select(m => m["Column1"]).ToList();

Nun möchte ich zum filtern der Daten basierend auf einem Liste von strings List<string> columnsToFilter. Was ist der beste Weg, das zu erreichen?

  • Irgendwie nicht sicher, was Sie Fragen. Sie Fragen sich, wie Sie 'filter', aber dann verwenden Sie "filter", wenn du redest Select, was im Allgemeinen als eine 'Projektion', aber nicht 'filter'. 'Filter' sind in der Regel Funktionen wie Where oder Count, First, Single zu tun filtern.
  • youre Recht, ich meinte damit wählen Sie, ive aktualisiert die Frage. ich kann die Daten auswählen, die für eine Spalte mit einem string, aber ich möchte die Daten auswählen, die für mehrere Spalten mit einer Liste von strings
  • von hier aus stackoverflow.com/questions/6772267/... es sieht aus wie Sie können einfach verwenden ||
  • ja, aber dann müssen Sie wissen, wie viele Elemente in der Liste<string>', und, kann ebenfalls variieren...
  • Ich denke, was Sie versuchen zu sagen ist, dass Sie bauen wollen, eine dynamische select-Anweisung basierend auf dem Inhalt einer Liste. Ich würde check out diese Frage: stackoverflow.com/questions/606104/... für einen Hinweis, wie dies zu tun.
InformationsquelleAutor stefjnl | 2013-10-02
Schreibe einen Kommentar