Avatar ·

Wie führe ich eine LINQ-Abfrage für eine DataTable in C# .NET 3.5 durch?

Hallo zusammen! Ich bin ein Anfänger in C# und arbeite mit .NET Framework 3.5. Ich habe eine DataTable, die mit Daten aus der Datenbank gefüllt ist. Ich muss Zeilen nach einer Bedingung filtern und eine Liste von Objekten erhalten. Zum Beispiel gibt es eine Tabelle Employees mit den Spalten ID, Name, Department, Salary. Ich möchte alle Mitarbeiter aus der Abteilung "IT" mit einem Gehalt über 50000 auswählen.

Ich habe es so versucht:

DataTable dt = GetEmployeesDataTable();
var result = from row in dt.Rows
             where row["Department"] == "IT" && (int)row["Salary"] > 50000
             select row;

Aber ich erhalte einen Kompilierungsfehler: "Could not find an implementation of the query pattern for source type 'DataRowCollection'. 'Where' not found." Ich verstehe, dass DataTable.Rows keine Sammlung ist, die LINQ unterstützt. Wie schreibe ich die Abfrage richtig? Muss ich die DataTable in etwas anderes umwandeln? Ich werde