Dynamic SQL Query Entity Framework

Я просмотрел много сообщений о переполнении стека, чтобы получить ответ, но я еще не понял. Я просто ищу простой способ создания динамических запросов. Мне удалось выполнить простые запросы, включающие одно выражение в предложении where, но я не могу найти простой способ обработки нескольких выражений. У меня есть опыт работы с API критериев NHibernate, который очень удобен для быстрых и безопасных во время компиляции конструкций запросов. Я, хотя что-то подобное будет доступно на EntityFramework, но пока не повезло. Есть ли какой-нибудь простой способ, кроме ручного создания строковых запросов? Взгляните на следующий код, я думал, что он должен работать, но это не так. На самом деле он не строит запрос на основе нескольких лямбда-выражений. Я ожидал, что каждый вызов where добавит одно выражение AND к предложению where. Я что-то упустил?

var query = Entities.Current.Jobs.AsQueryable<Job>();

            if (!string.IsNullOrEmpty(keywords))
            {
                query.Where(j => j.Title.Contains(keywords) || j.Description.Contains(keywords));
            }

            if (industryId > 0)
            {
                query.Where(j => j.IndustryId == industryId);
            }

            if (countyId > 0)
            {
                query.Where(j => j.CountyId == countyId);
            }

            return query.ToList<Job>();
5
задан Leadfoot 16 October 2011 в 16:50
поделиться