У меня есть небольшая проблема в моем выражении where в выражении linq ниже. Если я ставлю номер 3 вместо отдела. Я получаю желаемый результат, но когда я использую department.Id, я ничего не получаю в наборе результатов.Linq To Entities
Я также хочу получить число для количества фильтров для этого имени фильтра, используя запрос снова, используя различные.
var dept = Page.RouteData.Values["department"];
var department = (from d in db.Departments
where d.Name.Replace(" ", "-") == dept
select new {d.Id, d.Name}).FirstOrDefault();
var query = from p in db.Products
join f in db.ProductFilters on p.Id equals f.ProductId into filters
from x in filters.Where(x => x.Product.DepartmentId == department.Id
/* if == 3 it works */)
select new { x.Name, x.Id };
Вы проверили, что экземпляр отдела, как вы думаете, должен быть после первого оператора linq, т.е. имеет идентификатор 'Id == 3'? –
Теперь я чувствую себя довольно глупо. Я использовал неправильный отдел в url RouteData. он работает сейчас. Но теперь это исправлено, и он работает, вы знаете, как я могу получить количество моих фильтров в группах, например, под названием «Бренды» будет брендом, и у него будут фильтры со счетчиком следующего количества того, сколько брендов находится в этом фильтре. – ONYX