c # contient une recherche insensible à la casse
J'ai le code suivant
var returnData = DemoData.Books.AsQueryable();
if (criteria.Author != string.Empty)
{
returnData = returnData.Where(x => x.Author.Contains(criteria.Author));
}
Comment j'ai fait la clause where de la casse?
source d'informationauteur user2206329 | 2014-04-13
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
ToLower()
fonction.ToLower
changements de cordes à être en minuscules. Il convertit une chaîne complète—sans changer les lettres qui sont déjà mises en minuscule ou en chiffres. Il copie une chaîne de caractères et retourne une référence à la nouvelle chaîne. Il est donc toujours préférable de déclarercriteria.Author.ToLower()
à l'extérieur de la requête.Vous pouvez également utiliser
IndexOf
surcharge avec lesStringComparison
enum. Il vous donnera de meilleures performances queToLower()
. La signature de cette surcharge est:À ne pas faire de chaîne supplémentaire de répartition à tous.
J'ai supposé que c'est de LINQ to Objects requête.