我已使用TypeMapping在我的代码中指定了文档映射,而索引我开始看到以下异常
{“error”:“RoutingMissingException [[search2] / [ImageDocument] / [2039810546]]需要路由”,“status”:500}
在指定类型映射时,我没有找到任何使用NEST指定路由的方法! 任何线索在索引时或在时间映射时我们在哪里指定路由参数?
答案 0 :(得分:1)
我们可以在索引时使用IndexParameters参数并指定路由
IndexParameters indexParams = new IndexParameters() { Routing = "id" };
var resp = ConnectedClient.Index(doc, "IndexName", "typeName", id, indexParams);
答案 1 :(得分:0)
在NEST v2.4中,您可以使用selector参数指定路由。
public IIndexResponse Index<T>(T @object, Func<IndexDescriptor<T>, IIndexRequest> selector = null) where T : class;
并像这样使用它:
var routingId = 1;
var resp = client.Index(doc, r => r.Routing(routingId));