Avatar ·

Comment exécuter une requête LINQ sur un DataTable en C# .NET 3.5 ?

Bonjour à tous ! Je suis un développeur C# débutant, travaillant avec .NET Framework 3.5. J'ai un DataTable rempli de données provenant d'une base de données. Je dois filtrer les lignes selon une condition et obtenir une liste d'objets. Par exemple, j'ai une table Employees avec les colonnes ID, Name, Department, Salary. Je veux sélectionner tous les employés du département "IT" avec un salaire supérieur à 50000.

J'ai essayé d'écrire ceci :

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

Mais j'obtiens une erreur de compilation : "Could not find an implementation of the query pattern for source type 'DataRowCollection'. 'Where' not found." Je comprends que DataTable.Rows n'est pas une collection supportant LINQ. Comment écrire correctement la requête ? Dois-je convertir le DataTable en autre chose ? Je serai reconnaissant pour toute aide.