Maison >base de données >tutoriel mysql >Comment effectuer des recherches génériques avec LINQ ?

Comment effectuer des recherches génériques avec LINQ ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-03 19:20:401045parcourir

How to Perform Wildcard Searches with LINQ?

Recherche générique dans LINQ

Dans LINQ, il est souvent nécessaire d'effectuer des recherches floues pour des chaînes spécifiques, telles que contient, commence ou se termine , etc. fonctionnent. Cependant, nous devons parfois effectuer une recherche plus flexible, telle qu'une recherche par caractère générique.

Défi présenté par la question

L'utilisateur souhaite effectuer une recherche générique similaire à "%Test if%it work%" dans LINQ. Ce type de recherche est utile pour la validation, le filtrage et la mise en correspondance des données.

Solution pour SqlMethods.Like()

LINQ fournit un moyen d'effectuer une recherche par caractère générique via la méthode SqlMethods.Like(). Cette méthode prend deux paramètres : le premier paramètre est la chaîne à rechercher et le deuxième paramètre est une expression générique.

Exemple

Regardons un exemple dans lequel nous utilisons SqlMethods.Like() pour trouver les utilisateurs dont le prénom contient "John" :

var results =
    from u in users
    where SqlMethods.Like(u.FirstName, "%John%")
    select u;

Dans cet exemple, nous rechercherons tous les utilisateurs dont le Prénom contient « John ». Différents caractères génériques peuvent être utilisés, par exemple :

  • % : correspond à n'importe quelle séquence de caractères
  • _ : correspond à un seul caractère
  • [] : correspond à une plage spécifiée de caractères (par exemple, [A-Z] correspond à toutes les lettres majuscules)

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