LINQ to SQL: Comment écrire un 'Like' select?
J'ai le SQL suivant:
select * from transaction_log where stoptime like '%2008%'
Comment puis-je écrire cela dans LINQ to SQL syntaxe?
Vous devez vous connecter pour publier un commentaire.
J'ai le SQL suivant:
select * from transaction_log where stoptime like '%2008%'
Comment puis-je écrire cela dans LINQ to SQL syntaxe?
Vous devez vous connecter pour publier un commentaire.
Si vous souhaitez utiliser la méthode littérale, c'est comme ça:
Une autre option est:
Si c'est un DateTime:
Que la méthode est dans le Système.Les données.Linq.SqlClient espace de noms
Si stoptime des données de type chaîne de caractères, vous pouvez utiliser .Fonction contains (), et aussi .StartsWith() et .EndsWith().
Si vous utilisez le contient à la méthode, alors vous faites un LIKE '%somestring%'. Si vous utilisez un startswith méthode, puis c'est la même que la " somestring%'. Enfin, endswith est la même que l'utilisation de '%somestring'.
Pour résumer, contient trouverez une tendance à la chaîne mais startswith et endswith va vous aider à trouver des correspondances au début et à la fin du mot.
Le plus intéressant, c'est, que .NET crée des requêtes comme "Select * from table where nom like '%test%'" lorsque vous utilisez "de x dans le contexte.Table où x.Contient("test"), sélectionnez x" qui est assez impressionnant
Merci, bonnes réponses.
C'est, en fait, un type DateTime; j'ai eu à catalogué "stoptime" comme:
Point mineur. Il fonctionne très bien!