Maison >développement back-end >C++ >Comment puis-je effectuer une requête Contient insensible à la casse dans LINQ ?

Comment puis-je effectuer une requête Contient insensible à la casse dans LINQ ?

DDD
DDDoriginal
2025-01-03 02:03:40861parcourir

How Can I Perform a Case-Insensitive Contains Query in LINQ?

Requête contient insensible à la casse dans LINQ

Lors de l'exécution d'une opération contient dans les requêtes LINQ, le comportement par défaut est sensible à la casse. Cependant, il existe des situations dans lesquelles vous souhaiterez peut-être rechercher une sous-chaîne sans tenir compte de la casse.

Un exemple est le code suivant, qui recherche un élément d'installation en fonction d'une description :

public IQueryable<FACILITY_ITEM> GetFacilityItemRootByDescription(string description)<br>{</p>
<pre class="brush:php;toolbar:false">return this.ObjectContext.FACILITY_ITEM.Where(fi => fi.DESCRIPTION.Contains(description));

}

Dans ce code, si le paramètre description est en majuscule, il ne trouvera que les éléments qui ont des descriptions qui sont également en majuscules. Pour rendre cette requête insensible à la casse, vous pouvez utiliser l'approche suivante :

fi => fi.DESCRIPTION.ToLower().Contains(description.ToLower())<br>

Ce code convertit à la fois le paramètre de description et la propriété DESCRIPTION de chaque FACILITY_ITEM en minuscules avant d'effectuer la commande contain opération. Cela garantit que la requête correspondra aux éléments quelle que soit la casse de l'entrée.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn