Я новичок в Linq и изо всех сил пытаюсь использовать динамические отношения между многими и многими.
Таблицы базы данных выглядят так:
Товары ‹-> Товары_Подкатегории ‹-> Подкатегории
где Products_SubCategories является таблицей ссылок.
Мой полный оператор linq
db.Products.Where("it.SubCategories.SubCategoryID = 2")
.Include("SubCategories")
.OrderBy(searchOrderBy)
.Skip(currentPage * pageSize)
.Take(pageSize)
.ToList()
.ForEach(p => AddResultItem(items, p));
Поэтому, игнорируя все, кроме Where(), я просто пытаюсь вытащить все продукты, которые связаны с идентификатором подкатегории 2, это не удается с
Чтобы извлечь свойства из коллекций, вы должны использовать подзапрос для перебора коллекции. Рядом с составным идентификатором, строка 8, столбец 1.
Я думаю, что, используя синтаксис SQL-esque, я могу выполнить подзапрос в соответствии с по этой ссылке. Однако я не уверен, как это сделать в синтаксисе лямбда/цепочки.
Это начало функции поиска, и я хотел бы динамически создать строку where, как я сделал со строкой searchOrderBy, чтобы избежать большого SELECT CASE. Продукты связаны с другой таблицей через таблицу ссылок, которую мне нужно будет включить, как только я пойму, как сделать этот пример.
Любая помощь приветствуется!
Спасибо