Как сделать запрос LIKE с помощью linq? Как я могу выполнить LIKE-запрос в Linq? У меня есть следующий запрос, который я хотел бы выполнить. var results = from c in db.costumers where c.FullName LIKE "%"+FirstName+"%,"+LastName select c; Ответ 1 Вы можете использовать SqlMethods.Like(matchExpression, pattern) var results = from c in db.costumers where SqlMethods.Like(c.FullName, "%"+FirstName+"%,"+LastName) select c; Использование этого метода вне LINQ to SQL всегда будет генерировать исключение NotSupportedException. Ответ 2 Попробуйте использовать string.Contains() в сочетании с EndsWith. var results = from c in db.Customers where c.FullName.Contains (FirstName) && c.FullName.EndsWith (LastName) select c; Ответ 3 Попробуйте это var results = db.costumers.Where(X=>X.FullName.Contains(FirstName)&&(X=>X.FullName.EndsWith(LastName)) .Select(X=>X); Ответ 4 String [] obj = (from c in db.Contacts where c.FirstName.StartsWith(prefixText) select c.FirstName).ToArray(); return obj; StartsWith() и EndsWith() могут помочь вам здесь. Если вы хотите найти данные между полем, можно использовать Contains(). Ответ 5 where c.FullName.Contains("string") Ответ 6 Вы можете использовать содержит: string[] example = { "sample1", "sample2" }; var result = (from c in example where c.Contains("2") select c); // returns only sample2 Ответ 7 var StudentList = dbContext.Students.SqlQuery("Select * from Students where Email like '%gmail%'").ToList<Student>(); Пользователь может использовать подобный запрос в Linq и заполнять модель студента.
Ответ 1 Вы можете использовать SqlMethods.Like(matchExpression, pattern) var results = from c in db.costumers where SqlMethods.Like(c.FullName, "%"+FirstName+"%,"+LastName) select c; Использование этого метода вне LINQ to SQL всегда будет генерировать исключение NotSupportedException.
Ответ 2 Попробуйте использовать string.Contains() в сочетании с EndsWith. var results = from c in db.Customers where c.FullName.Contains (FirstName) && c.FullName.EndsWith (LastName) select c;
Ответ 3 Попробуйте это var results = db.costumers.Where(X=>X.FullName.Contains(FirstName)&&(X=>X.FullName.EndsWith(LastName)) .Select(X=>X);
Ответ 4 String [] obj = (from c in db.Contacts where c.FirstName.StartsWith(prefixText) select c.FirstName).ToArray(); return obj; StartsWith() и EndsWith() могут помочь вам здесь. Если вы хотите найти данные между полем, можно использовать Contains().
Ответ 6 Вы можете использовать содержит: string[] example = { "sample1", "sample2" }; var result = (from c in example where c.Contains("2") select c); // returns only sample2
Ответ 7 var StudentList = dbContext.Students.SqlQuery("Select * from Students where Email like '%gmail%'").ToList<Student>(); Пользователь может использовать подобный запрос в Linq и заполнять модель студента.