c# – 如何从.Net或NEST在Elasticsearch 5中创建新索引

我正在尝试使用批量API从.net和SQL数据库中创建新的Elastic 5索引.

我已经为映射创建了一个POCO:

using Nest;

namespace NEST5
{
  [ElasticsearchType(IdProperty = "data_id")]
  public class Test_Data
  {    
     public int data_id { get; set; }
     public string address { get; set; }
     public string location { get; set; }
  }
}

我将SQL中的数据转换为Test_Data类型的列表

然后我尝试连接到我的Elasticsearch服务器并创建索引:

var connectionPool = new SingleNodeConnectionPool(new Uri("http://<ip here>:9200/"));
var settings = new ConnectionSettings(connectionPool, new InMemoryConnection())
 .DefaultIndex("test_data")
 .BasicAuthentication("username", "password");

var client = new ElasticLowLevelClient(settings);

var descriptor = new CreateIndexDescriptor("test_data")
 .Mappings(ms => ms
 .Map<Test_Data>(m => m.AutoMap())
 );

client.IndicesCreate<Test_Data>("test_data", descriptor, null);

但是,这不会显示错误,但也不会根据需要创建新索引.

提前感谢您的任何帮助.

最佳答案 您在ConnectionSettings中使用新的InMemoryConnection(),尝试删除它.

点赞