假设我们有一个名为acls的类,这个类有一个名为lprop的List属性。
现在假设我有另一个值为1,3,5的List,并且假设这个变量名称是tosearch。
我想通过使用nest搜索弹性搜索索引中的acls类型记录lprop属性中的tosearch值,只查找一个匹配就足够了。
例如:
`public class acls
{
public List<int> lprop {get;set;}
}
public void main()
{
//.. creating connection and etc..
// we have 3 recs of acls
// 1. lprop values: 2,4,6,8
// 2. lprop values: 1,9,0,4
// 3. lprop values: 6,7,8
List<int> tosearch = new int[] { 1, 3, 5 }.ToList();
//Now I want to search tosearch values in acls lprop values.
// Result should be: 2. records
}`
答案 0 :(得分:5)
client.Search<acls>(s => s
.Query(q => q
.Terms(c => c
.Field(p => p.lprop)
.Terms<string>(tosearch)
)
)
);
答案 1 :(得分:0)
试试这个,虽然我不明白为什么结果应该有2条记录
public static bool Search(List<string> lprop, List<string> tosearch)
{
if (tosearch.Any(s => lprop.Any(v => v == s)))
{
return true;
}
return false;
}