Nest查询示例
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Elasticsearch.Net;
using Nest; namespace ElasticSearchClinet_NEST
{
class Program
{
static void Main(string[] args)
{
new TestElasticSearch().TestRequest();
}
} public class TestElasticSearch
{
/// <summary>
/// 生成搜索客户端
/// </summary>
/// <returns></returns>
private ElasticClient GetSearchClient()
{
//var connectString = ConfigurationManager.ConnectionStrings["ElasticSearch"].ConnectionString;
var nodes = new Uri[]
{
new Uri("http://a.elk.qaem.cn:9200"),
new Uri("http://b.elk.qaem.cn:9200"),
new Uri("http://c.elk.qaem.cn:9200"),
new Uri("http://d.elk.qaem.cn:9200"),
};
var pool = new StaticConnectionPool(nodes);
var settings = new ConnectionSettings(pool);
var client = new ElasticClient(settings);
return client;
} public string TestRequest()
{
var client = this.GetSearchClient();
var person = new Person
{
Id = "",
Firstname = "Martijn",
Lastname = "Laarman"
}; var index = client.Index(person, i => i
.Index("personindex")
.Type("persontype")
.Id("")
.Refresh()
.Ttl("1m")
); var results = client.Search<Person>(s => s
.From()
.Size()
.Query(q => q
.Term(p => p.Firstname, "martijn")
)
); foreach (var item in results.Hits)
{
var p = item.Source;
Console.WriteLine(p.Id);
Console.WriteLine(p.Firstname);
Console.WriteLine(p.Lastname);
}
Func<MatchPhraseQueryDescriptor<Person>, IMatchQuery> selector = q =>
{
return q.Query(@"{
""query"": {
""match_phrase"": {
""ZuHeName"": ""基金""
}
}
}");
};
Func<SearchDescriptor<ZuHeEntity>, ISearchRequest> search = s => s
.Query(
q=>q.MatchPhrase(t=>t.Field("ZuHeName").Query("基金"))
).From()
.Size(); var zuheList = client.Search<ZuHeEntity>(search); foreach (var item in zuheList.Hits)
{
var p = item.Source;
Console.WriteLine(p.ZuHeId);
Console.WriteLine(p.ManagerName);
Console.WriteLine(p.ZuHeName);
}
Console.ReadKey();
return results.Hits.Count().ToString();
}
} public class Person
{
public string Id { get; set; }
public string Firstname { get; set; }
public string Lastname { get; set; }
} public class ZuHeEntity
{ /// <summary>
/// 组合Id
/// </summary>
public string ZuHeId
{
get;
set;
} /// <summary>
/// 管理人Id
/// </summary>
public string ManagerId
{
get;
set;
} /// <summary>
/// 组合创建时间
/// </summary>
public DateTime StartDate
{
get;
set;
} /// <summary>
/// 组合名
/// </summary>
public string ZuHeName
{
get;
set;
} /// <summary>
/// 组合管理人名
/// </summary>
public string ManagerName
{
get;
set;
} public string Permit
{
get; set;
}
} }
http://nest.azurewebsites.net/nest/cluster/health.html
Nest查询示例的更多相关文章
- Elasticsearch .Net Client NEST 多条件查询示例
Elasticsearch .Net Client NEST 多条件查询示例 /// <summary> /// 多条件搜索例子 /// </summary> public c ...
- NHibernate查询示例合集
基本查询 复杂查询示例 /// <summary> /// 获取自定义表单数据中属于部门的部分 /// </summary> /// <param name=&quo ...
- MyBatis 查询示例
环境搭建 数据库schema 1)datasource.xml配置 <?xml version="1.0" encoding="UTF-8"?> & ...
- spring boot - 整合jpa多对对关系保存和查询示例
pojo: package com.example.zs.springDataJpa; import org.hibernate.annotations.Proxy; import javax.per ...
- Elasticsearch 邻近查询示例
Elasticsearch 邻近查询示例(全切分分词) JAVA API方式: SpanNearQueryBuilder span = QueryBuilders.spanNearQuery(); s ...
- Accessoft-日期区间段查询示例,开始日期至截止日期区段查询
Accessoft-日期区间段查询示例,开始日期至截止日期区段查询 实现功能效果如下: 示例查询开始日期为2017年3月15日到2017年3月16日的内容: sql查询语句如下: SELECT Inf ...
- SQL Server-简单查询示例(十一)
前言 本节我们讲讲一些简单查询语句示例以及需要注意的地方,简短的内容,深入的理解,Always to review the basics. EOMONTH 在SQL Server 2012的教程示例中 ...
- Spring SimpleJdbcTemplate查询示例
这里有几个例子来说明如何使用SimpleJdbcTemplate query()方法来查询或从数据库中提取数据.在 JdbcTemplate query() 方法,需要手动转换返回的结果转换为一个目标 ...
- mysql——单表查询——分组查询——示例
一.基本查询语句 select的基本语法格式如下: select 属性列表 from 表名和视图列表 [ where 条件表达式1 ] [ group by 属性名1 [ having 条件表达式2 ...
随机推荐
- LightOJ1298 One Theorem, One Year(DP + 欧拉函数性质)
题目 Source http://www.lightoj.com/volume_showproblem.php?problem=1298 Description A number is Almost- ...
- OpenCV 第一课(安装与配置)
OpenCV 第一课(安装与配置) win10,opencv-2.4.13, 安装, vs2013, 配置 下载安装软件 官网OpenCV下载地址下载最新版本,我下载的是opencv.2.4.13,然 ...
- nginx负载均衡之基于客户端cookie的会话保持
通过ip_hash做会话保持有一定的缺陷,这个是通过客户端ip来实现.同一个网络下众多客户端访问服务器会被扔到同一台机器,再或者是CDN也 会导致负载不均衡.所以要实现通过客户端cookie实现,包括 ...
- storm UI
Storm UI ——本文主要解释下storm ui上各项属性的含义. 通过http://UI_Server:8080可以打开Storm Web UI看看Storm集群的状态. 1. mainpage ...
- Scheduled Projects
Plans as at 10/03/15 ASB --------> Li ...
- js判断访问来源
通过navigator的userAgent属性来判定 userAgent 属性是一个只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值.一般来讲,它是在 navigator.appCode ...
- 通过MongoDB的samus驱动实现基本数据操作
一.MongoDB的驱动 MongoDB支持多种语言的驱动: 在此我们只介绍 C# 的驱动.仅C#驱动都有很多种,每种驱动的形式大致相同,但是细节各有千秋,因此代码不能通用.比较常用的是官方驱动和sa ...
- 清除BOM头源码
BOM: Byte Order Mark UTF-8 BOM又叫UTF-8 签名,其实UTF-8 的BOM对UFT-8没有作用,是为了支援UTF-16,UTF-32才加上的BOM,BOM签名的意思就是 ...
- tomcat 设置根目录访问
from http://nj-apple-tree.iteye.com/blog/1635953 1,设置跟路径时,三种方式 在Tomcat默认安装后,tomcat的主目录是webapps/root目 ...
- HDU1063 大数 java
Exponentiation Time Limit: 2000/500 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot ...