如何在elasticsearch bulk api(NEST)中使用ttl

时间:2014-12-03 12:10:41

标签: c# elasticsearch nest elasticsearch-bulk-api

我尝试使用NEST客户端使用批量API。如何根据集合的属性指定TTL值。考虑以下代码片段,如何指定" ttl"说人。年龄> 50 - > 1个月,否则6个月?:

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);

1 个答案:

答案 0 :(得分:0)

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