Wenn alles, was Sie wollen, ist einen Teil innerhalb einer anderen Zeichenfolge zu finden, der beste Weg, dies zu tun ist mit der Contains
Methode:
query = query.Where(s => s.ShowTypeDescription.Contains(showTypeDescription));
Da die String.Contains
Methode übersetzt:
CHARINDEX(ShowTypeDescription, @showTypeDescription) > 0
Das entspricht in etwa:
ShowTypeDescription LIKE '%' + @showTypeDescription + '%'
Update: In Linq-to-SQL, können Sie die SqlMethods.Like
Methode verwenden:
query = query.Where(s => SqlMethods.Like(s.ShowTypeDescription, showTypeDescription));
Diese direkt an den SQL LIKE
Operator übersetzen. Beachten Sie jedoch, dass dies außerhalb von Linq-to-SQL-Abfragen nicht funktioniert. Der Versuch, diese Methode in anderen Kontexten aufzurufen, löst eine Ausnahme aus.
Suche ist dein Freund - http://stackoverflow.com/questions/2493703/linq-to-entity-using-a-sql-like-operator?rq=1 – EkoostikMartin
das hilft mir nicht. Ich weiß über "Enthält", aber wie würde ich das in den Code implementieren, den ich habe? –
Wenn Sie über 'Contains()' wüssten, würden Sie diese Frage nicht stellen ... – EkoostikMartin