2014-12-03 1 views
0

Я пытаюсь использовать массовый API, используя клиент NEST. Как указать значение TTL на основе атрибута коллекции. Рассмотрим следующий фрагмент кода, как я могу определить "ТТЛ" сказать person.age> 50 -> 1 месяц, в противном случае 6 месяцев ?:Как использовать ttl в elasticsearch bulk api (NEST)

var coll = new List<Person>(); 
// fill the collection from db etc... 

var desc = new BulkDescriptor(); 
foreach(var p in coll) 
{ 
    // desc.Index<Person>(....); 
    // How can I say, "if person.Age > 50, ttl = 1 month, otherwise 6 months? 
} 

var result = client.Bulk(desc); 

ответ

0
desc.Index<Person>(i => i 
    .Document(p) 
    .Ttl(p.Age > 50 ? "1M" : "6M") 
); 
+0

является «результат = client.Bulk (по убыванию);» верный? Когда я вызываю этот метод, я получаю WebException. – meraydin