我刚刚通过文档发现我们应该告诉它使用映射属性并在索引之前手动创建索引。
但是,文档与最新版本的代码不一致。 (预发布)。
http://nest.azurewebsites.net/nest/indices/put-mapping.html
var response = this.ConnectedClient.Map<ElasticSearchProject>();
新代码中的上述调用在Map()方法中使用了1个参数。文档不需要任何参数。
该方法应包含哪些内容?似乎有很多选择,但我不清楚使用哪些。
答案 0 :(得分:1)
查看Create Indices文档。我认为这样的事情会对你想要完成的事情起作用。此外,它将创建索引并将映射全部应用于您的Elasticsearch实例。
client.CreateIndex("myindexname", c => c
.NumberOfReplicas(0)
.NumberOfShards(1)
.Settings(s=>s
.Add("merge.policy.merge_factor","10")
.Add("search.slowlog.threshold.fetch.warn", "1s")
)
.AddMapping<ElasticSearchProject>(m => m.MapFromAttributes())
.AddMapping<Person>(m => m.MapFromAttributes())
);
.AddMapping<ElasticSearchProject>(m => m.MapFromAttributes())
行告诉NEST抓取ElasticSearchProject类上的via ElasticType
和ElasticProperty
上的所有属性设置,并使用它们来创建映射。