LIKE und Wildcards bei Linq

Sunday, December 16, 2007 4:54:46 PM (Mitteleuropäische Zeit, UTC+01:00)

Möchte man mit SQL zum Beispiel alle Kundennamen aus einer Tabelle abfragen die mit "Me" beginnen, verwendet man LIKE, wie das folgende Beispiel zeigt:

SELECT * FROM customer
WHERE ContactName LIKE 'Me%' 

Linq bietet für diesen Zweck die Methode StartsWith an:

var customers = from c in db.Customers
                where c.ContactName.StartsWith("Me")
                select c; 

Möchte man jedoch auf die LIKE Methode in Linq nicht verzichten um Wildcards wie das Prozentzeichen zu verwenden, kann die Methode SqlMethods.Like aus dem Namespace System.Data.Linq.SqlClient verwendet werden.

Beispiel:

var customers = from c in db.Customers
                where SqlMethods.Like(c.ContactName, "Me%")
                select c;

Diesen Tooltip sollte man an dieser Stelle einfach ignorieren :-)

Like

Wenn ihnen der Artikel gefallen hat oder er für sie hilfreich war,
bitte "kicken" sie ihn.

Kick it on dotnet-kicks.de