【发布时间】:2017-06-14 14:23:16
【问题描述】:
我有以下疑问:
List<int> genreIdsInt = genreIds.Split(',').Select(Int32.Parse).ToList();
resultsAfterGenreFilter = (from g in db.games
join gg in db.game_genres on g.id equals gg.game_id
where (gg.genre_id == genreId || genreId == 0)
select g).Distinct();
但是,我不希望获得具有特定流派的游戏,而是希望针对存在于 genreIdsInt 数组中的所有流派列出的游戏。
因此,如果游戏没有所有类型都与genreIdsInt 列表中列出的类型相互关联,那么它们将不会包含在最终结果中。
game_genres 表
- id (int)
- game_id (int)
- genre_id (int)
游戏桌
- id (int)
- 名称(字符串)
示例:如果游戏 X 属于流派 2。如果列表包含 2 和 3,则该游戏不会被返回,因为它只属于流派 2。它必须同时属于流派 2 和 3 才能返回结果。
我正在使用实体框架在 LINQ 中创建查询。 ASP.NET 4.6 / C#
【问题讨论】:
标签: sql entity-framework linq