Exemplo n.º 1
0
        static void Main(string[] args)
        {
            var indexName          = "geodocument";
            var connectionPool     = new Elasticsearch.Net.SniffingConnectionPool(new Uri[] { new Uri("http://localhost:9200") });
            var connectionSettings = new Nest.ConnectionSettings(connectionPool);

            connectionSettings.DefaultIndex(indexName);
            connectionSettings.DisableDirectStreaming();
            var elasticClient = new ElasticClient(connectionSettings);
            Func <TypeMappingDescriptor <GeoDocument>, ITypeMapping> typeMapping = m => m
                                                                                   .Dynamic(false)
                                                                                   .Properties(ps => ps
                                                                                               .Keyword(k => k
                                                                                                        .Name(n => n.DocId))
                                                                                               .GeoShape(g => g
                                                                                                         .PointsOnly(false)
                                                                                                         .Name(o => o.GeoField)));

            elasticClient.CreateIndex(new CreateIndexDescriptor(indexName).Mappings(ms => ms.Map(typeMapping)));
            var polygon  = "{\"type\":\"Polygon\",\"coordinates\":[[[5.856956,51.002753],[5.856928,51.002771],[5.856687,51.002853],[5.856956,51.002753]]]}";
            var document = new GeoDocument()
            {
                DocId    = "1",
                GeoField = JsonConvert.DeserializeObject <object>(polygon),
            };
            var indexResponse = elasticClient.IndexDocument(document);

            Console.WriteLine(indexResponse.DebugInformation);

            elasticClient.DeleteIndex(new DeleteIndexRequest(indexName));
            Console.ReadKey();
        }
Exemplo n.º 2
0
 public void Test2()
 {
     //连接池:Connection pool
     var uris = new[]
     {
         new Uri("http://localhost:9200"),
         new Uri("http://localhost:9201"),
         new Uri("http://localhost:9202"),
     };
     var connectionPool = new Elasticsearch.Net.SniffingConnectionPool(uris);
     var settings       = new Elasticsearch.Net.ConnectionConfiguration(connectionPool);
     var lowlevelClient = new Elasticsearch.Net.ElasticLowLevelClient(settings);
 }