试试这个:
var searchResults2 = client.Search<File>(s => s
.Query(q => q
.Term(p => p.Field(r => r.fileContents).Value("int")
)
));
跟帖:
RequestInformation
不NEST的新版本。
- 我建议在步骤(在client.Search不要直接建立查询打破你的代码()方法。
client.Search()接受Func<SearchDescriptor<T>, ISearchRequest>
为输入(参数)。
我从similar post答案:
SearchDescriptor<T> sd = new SearchDescriptor<T>()
.From(0).Size(100)
.Query(q => q
.Bool(t => t
.Must(u => u
.Bool(v => v
.Should(
...
)
)
)
)
);
并得到了反序列化JSON是这样的:
{
"from": 0,
"size": 100,
"query": {
"bool": {
"must": [
{
"bool": {
"should": [
...
]
}
}
]
}
}
}
这是烦人,NEST图书馆应该有一些来自请求吐出来的是JSON。然而,这对我有效:
using (MemoryStream mStream = new MemoryStream()) {
client.Serializer.Serialize(sd, mStream);
Console.WriteLine(Encoding.ASCII.GetString(mStream.ToArray()));
}
NEST库版本:2.0.0.0。 新版本可能有一个更简单的方法来获得这个(希望)。
请提及'client'的完整定义。 – bittusarkar 2015-03-31 19:53:23