使用NEST为_all字段设置分析器

时间:2014-04-07 18:38:40

标签: nest

_all field Elasticsearch Documentation中所述。

  

_all字段允许设置store,term_vector和analyzer(具有特定的index_analyzer和search_analyzer)。

有没有办法在index_analyzer字段中指定search_analyzer_all属性,以便与NEST进行映射?具体来说,我希望能够为我的索引设置以下内容:

 {
     "model": {
        "_all": { 
             "index_analyzer": "nGram_analyzer",
             "search_analyzer": "whitespace_analyzer"
        }

       ...
  }

我没有在Fluent Mappings中看到任何允许这样的内容。如果不是通过Fluent Mapping,我可以手动设置吗?

1 个答案:

答案 0 :(得分:3)

从NEST 1.0开始,您现在可以执行此操作:

var result = this._client.Map<ElasticsearchProject>(m => m
    .AllField(a=>a
        .Enabled() 
        .IndexAnalyzer("nGram_analyzer")
        .SearchAnalyzer("whitespace_analyzer")
        .TermVector(TermVectorOption.with_positions_offsets)
    )
    ...
    ...