简体   繁体   English

Azure 具有多个过滤器的搜索服务

[英]Azure search service with multiple filters

I am using Azure Search Service for a Web API.我正在为 Web API 使用 Azure 搜索服务。 Can anyone help me in passing filterquery to the search service with multiple filter options using c#.谁能帮助我使用 c# 将过滤器查询传递给具有多个过滤器选项的搜索服务。 (OData with multiple filters). (具有多个过滤器的 OData)。 Exact requirement: When filters applied in search results, the results should be displayed relevant to filters and Vice versa.确切要求:在搜索结果中应用过滤器时,应显示与过滤器相关的结果,反之亦然。

I tried:我试过了:

string searchServiceEndPoint = configuration["AzureSearchService:SearchServiceEndPoint"];字符串 searchServiceEndPoint = 配置["AzureSearchService:SearchServiceEndPoint"]; string queryApiKey configuration["AzureSearchService:SearchServiceQueryApiKey"];字符串 queryApiKey 配置["AzureSearchService:SearchServiceQueryApiKey"]; SearchClient searchClient = new SearchClient(new Uri(searchServiceEndPoint), indexName, new AzureKeyCredential(queryApiKey)); SearchClient searchClient = new SearchClient(new Uri(searchServiceEndPoint), indexName, new AzureKeyCredential(queryApiKey));

    SearchOptions options = new SearchOptions()
    {
        IncludeTotalCount = true,
        Filter = Filter = "SalesPlay eq '" + filterQuery["SalesPlay"] + "' And EventPrimaryLanguage eq '" + filterQuery["EventPrimaryLanguage"] + "' And EventStatus eq '" + filterQuery["EventStatus"] + "'"
    };

    var results = searchClient.Search<Azureview>("Local", options);

You're missing the SearchFilter.Create method .您缺少SearchFilter.Create 方法

You can refer also to this older post for an example and links: DotNet Core Azure Search SDK - filtering results您还可以参考这篇较早的帖子获取示例和链接: DotNet Core Azure 搜索 SDK - 过滤结果

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM