Méthode LINQ Contains : surmonter la sensibilité à la casse
La méthode LINQ Contains fournit un moyen puissant de vérifier la présence d'une sous-chaîne spécifique dans un chaîne. Cependant, par défaut, il effectue une comparaison sensible à la casse, ce qui peut ne pas être souhaitable dans certains scénarios. Cet article explique comment rendre la méthode Contains insensible à la casse à l'aide d'une simple modification.
Rendre Contains insensible à la casse
Pour rendre la méthode Contains insensible à la casse, vous pouvez utiliser l'option Méthode ToLower pour convertir à la fois la chaîne à vérifier et la sous-chaîne en minuscules avant d'effectuer la comparaison. Cette modification ignore les différences de casse, garantissant que les correspondances sont trouvées quelle que soit la casse des lettres.
Exemple de modification
Considérez la requête LINQ suivante :
public IQueryable<FACILITY_ITEM> GetFacilityItemRootByDescription(string description) { return this.ObjectContext.FACILITY_ITEM.Where(fi => fi.DESCRIPTION.Contains(description)); }
Ce code effectue une comparaison sensible à la casse, ce qui signifie que "FACILITY" ne correspondrait pas à "facility". Pour rendre cette comparaison insensible à la casse, la modification suivante peut être appliquée :
fi => fi.DESCRIPTION.ToLower().Contains(description.ToLower())
Cette modification convertit à la fois fi.DESCRIPTION et description en minuscules avant d'effectuer la comparaison Contient. En conséquence, la requête fera désormais correspondre "FACILITY" avec "facility" et vice versa.
Conclusion
En incorporant la méthode ToLower dans la comparaison Contains, vous peut facilement rendre les requêtes LINQ insensibles à la casse. Cela garantit que les opérations de récupération de données et de recherche ne sont pas affectées par les différences de casse, offrant ainsi plus de flexibilité et des résultats précis.
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!