Entity Framework : Utilisation de la clause IN avec des attributs
Dans Entity Framework, le filtrage des entités en fonction de divers champs à l'aide de clauses IN peut être réalisé dans de différentes manières, y compris les méthodes ANY et CONTAINS. Cependant, pour une clause IN directe de type SQL, une approche alternative peut être utilisée.
Utilisation de la clause IN de type SQL
Considérez la requête SQL suivante :
SELECT * FROM Licenses WHERE license = 1 AND number IN (1,2,3,45,99)
Pour répliquer cette requête dans Entity Framework, définissez un tableau représentant les valeurs à inclure dans la clause IN. Par exemple :
int[] ids = new int[]{1,2,3,45,99};
Ensuite, modifiez la requête Entity Framework comme suit :
using (DatabaseEntities db = new DatabaseEntities ()) { return db.Licenses.Where( i => i.license == mylicense && ids.Contains(i.number) ).ToList(); }
En appelant la méthode Contains sur le tableau spécifié, Entity Framework filtre efficacement la table Licences en fonction de les critères de la clause IN souhaités.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!