Elasticsearch .Net Client NEST 多条件查询示例
2016-10-21 16:57
2847 查看
Elasticsearch .Net Client NEST 多条件查询示例
交流
Elasticsearch.Net、NEST 交流群:523061899/// <summary> /// 多条件搜索例子 /// </summary> public class WheresQuerDemo { public class WhereInfo { public int venId { get; set; } public string venName { get; set; } } /// <summary> /// /// </summary> public static void Search() { ElasticClient client = NestDemos.CreateClient(); var result=client.Search<VendorPriceInfo>(CreateSearchRequest(new WhereInfo())); } /// <summary> /// searchRequest 生成 /// </summary> /// <param name="where"></param> /// <returns></returns> public static Func<SearchDescriptor<VendorPriceInfo>, ISearchRequest> CreateSearchRequest(WhereInfo where) { //querys var mustQuerys=new List<Func<QueryContainerDescriptor<VendorPriceInfo>, QueryContainer>>(); if (where.venId > 0) { mustQuerys.Add(t => t.Term(f => f.vendorID, where.venId)); } //filters var mustFilters = new List<Func<QueryContainerDescriptor<VendorPriceInfo>, QueryContainer>>(); if (!string.IsNullOrEmpty(where.venName)) { mustFilters.Add(t => t.MatchPhrase(f => f.Field(fd => fd.vendorName).Query(where.venName))); } Func<SearchDescriptor<VendorPriceInfo>, ISearchRequest> searchRequest = r => r.Query(q => q.Bool(b => b.Must(mustQuerys) .Filter(f => f.Bool(fb => fb.Must(mustFilters)) ) ) ); return searchRequest; } }
相关文章推荐
- (转)NEST.net Client For Elasticsearch简单应用
- Elasticsearch .net client NEST 5.x 使用总结
- Elasticsearch.net client NEST 5.x 使用总结
- NEST.net Client For Elasticsearch简单应用
- NEST.net Client For Elasticsearch简单应用
- Elasticsearch .Net Client NEST使用说明 2.x
- Elasticsearch .net client NEST使用说明 2.x -更新版
- Elasticsearch .net client NEST 5.x 使用总结
- Elasticsearch .net 客户端条件拼接查询
- Elasticsearch .net client NEST使用说明
- 水晶报表问题汇总(水晶报表的使用与查询条件生成报表、注册码、打印问题、模式使用示例、C#.Net的WinForm中的使用、程序发布与部署)
- .NET 分布式 搜索 elasticsearch.net NEST
- ElasticSearch RestHighLevelClient 教程(三) 删除&&查询删除
- Elasticsearch.Net Nest 5.0.0 用法
- .NET 分布式 搜索 elasticsearch.net NEST
- spring data elasticsearch的一个复杂查询条件
- ElasticSearch.net分组查询
- ElasticSearch.net In查询
- elasticsearch.net一个查询问题
- ElasticSearch.net结构化查询