我有2个表:(书,标签)它们之间的关系是多对多。
图书表包含ID,名称,版本....
标记表包含ID,名称。
由于许多EF关系创建的关系自动创建另一个名为:
的表TagBooks 它拥有两个表的ID。
我希望从TagBooks表中获取标签id = 80的所有书籍,但我不知道该怎么做..
我试过这个,但由于我做得不对,我只得到了一个结果:
var result = db.Books.Where(p => p.Tags.Any(s => s.Id == id)).ToList();
答案 0 :(得分:2)
首先找到标签然后获取该标签的书籍可能更容易
var result =
db.Tags
.Where(t => t.Id == id)
.SelectMany(t => t.Books)
.ToList();
虽然我不确定为什么你的原始尝试对你不起作用