1

我从这里看到了注释:https ://docs.microsoft.com/en-us/rest/api/searchservice/custom-analyzers-in-azure-search:您创建的自定义分析器未在 Azure 门户中公开. 添加自定义分析器的唯一方法是通过在定义索引时调用 API 的代码。

目前我正在使用以下 C# 代码来创建 Azure 搜索索引:

var definition = new Microsoft.Azure.Search.Models.Index()
{
    Name = "test-index",
    Fields = new List<Field>
    {
        new Field("field1", Microsoft.Azure.Search.Models.DataType.String) { IsKey = false, IsSearchable = false, IsFilterable = false, IsSortable = false, IsFacetable = false, IsRetrievable = true }
    }
}
searchClient.Indexes.CreateOrUpdate(myIndex);

有没有办法可以在这里添加一些代码,例如:

var analyzer = new CustomAnalyzer();
analyzer.Tokenizer = TokenizerName.Keyword;
analyzer.TokenFilters.Add(TokenFilterName.Lowercase);

然后在我上面的代码中添加这个自定义分析器让“field1”使用我定义的分析器?

4

1 回答 1

1

是的,您可以通过 SDK 添加自定义分析器,以下是一些示例: https ://github.com/Azure/azure-sdk-for-net/blob/master/sdk/search/Microsoft.Azure.Search/tests/测试/CustomAnalyzerTests.cs

于 2017-12-04T18:27:53.990 回答