Я использую c #, linq и EF4.
В моей базе данных есть две таблицы, представленные в моей концептуальной модели:
Таблицы базы данных:
CmsContents
CmsCategories
CmsRelatedCategories (Pure Juction Table)
Тип объекта:
CmsContent
CmsCategory
Набор предметов:
CmsContents
CmsCategories
У меня есть некоторые навигационные свойства:
for CmsContents --> CmsCategories --> Return Collection of Cms CmsCategory
for CmsCategories --> CmsContents --> Return Collection of Cms CmsContents
Представлены данные в базе данных для соединительной таблицы:
CategoryId ContentId
7 1
7 2
9 2
Мне нужно запросить Entry Framwork, чтобы получить все CmsContents, которые включены в Соединительную таблицу.
На данный момент я использую этот код:
var contents = from cnt in context.CmsContents
where cnt.CmsCategories.Any()
select cnt;
Возвращает:
CmsContents
1
2
Мне нужен результат, показывающий вместо:
CmsContents
1
2
2
Я подозреваю, что Any () показывает мне только значения DISTINCT, но мне нужны все значения в списке.
Есть идеи, как ее решить?
Не могли бы вы написать мне запрос LINQ, чтобы я мог получить четкую картину.