У меня есть требование, чтобы иметь возможность считывать данные сразу по клавише после записи в ES. Это возможно? Обратите внимание, что DataMap
- это пара ключевых значений, а _id
- это ключевое поле.ElasticSearch: запрос данных сразу после записи
string v = "Foobar" + i;
string k = Security.Hash(Encoding.UTF8.GetBytes(v));
var data = new DataMap { Key = k, Value = v };
var index = _esclient.Index(data);
// fetch by k
var results = _esclient.Search<DataMap>(p => p
.Size(1000)
.Fields(f => f.Key, f => f.Value)
.Query(q => q.Term("key", k))
);
// Make sure the record is found
if (!results.Hits.Any())
{
Console.WriteLine("{0} {1} not found", k, v);
}
Спасибо, Я использую «путь» не так же, как генерировать свой собственный id, так как _id ссылается на одно из моего свойства, которое уникально? Что эквивалентно GET API в библиотеке .Net NEST? – frosty
извините, я сам не знаю библиотеку NEST, но я нашел эту документацию: http://nest.azurewebsites.net/nest/core/get.html – BenG