我正在使用版本2.1和2.0(alpha)客户端以及Nest C#客户端... 我试图批量插入一些记录,然而服务器返回了一个错误。我在Windows客户端上使用客户端与Linux服务器通信(但我认为这不应该有影响)。
public static void AddQuestionsToElasticSearch()
{
var es = new ElasticsearchClient(new ConnectionConfiguration(
new Uri("http://elasticserver:9200"))
);
var foobars = new FooBar().Parse();
var descriptor = new BulkDescriptor();
descriptor.CreateMany<FooBar>(foobars, (bd, q) => bd.Id(q.Id.ToString()).Index("foobars"));
Console.WriteLine($"Inserting foobars into ES...");
var sw = new Stopwatch();
sw.Start();
var result = es.Bulk<FooBar>(descriptor);
sw.Stop();
Console.WriteLine($"Finished inserting foobars {GetTimeTaken(sw.Elapsed)}");
}
更新 - 错误信息
我遇到的错误在Bulk()方法返回的响应中... BulkResponse返回的两个属性是:
OriginalException: "远程服务器返回了一个错误:(400) 错误请求"
ServerError.Error: "验证失败:1:没有添加请求"
new FooBar().Parse();
实际上会返回任何项吗? - Rob