我尝试在ravendb查询中查询两个list<string>
,以查看列表-B是否包含列表A中的任何值。
但是得到错误:无法从类型的表达式中提取值:参数。
这是我的尝试:
public class Media
{
public List<string> Directors
}
var anotherMedia = new Media() {Directors = new List<string>() {"A", "B", "C"}};
var mediaWithSameDirector = session.Query<Media, Media_Index>().
Where(o => o.Directors.Any(l1 => anotherMedia.Any(l2 => l1 == l2)))
.Take(10).ToList();
答案 0 :(得分:4)
您可以使用In
:
var mediaWithSameDirector = session.Query<Media, Media_Index>()
.Where(o => o.Directors.In(anotherMedia)
.Take(10)
.ToList();