如何使用 Azure 搜索 SDK 筛选特定列

How to use Azure Search SDK to filter on specific column

我正在使用 Azure 搜索,我想使用 Azure 搜索 SDK 制作一个简单的过滤器表达式,但是当我想在特定字段上进行过滤时,我找不到有关如何通过代码执行此操作的文档。

这项工作适用于搜索浏览器

但是,在代码中,这不起作用;

我收到一个语法错误:

Console.Write("Apply a filter to the index to find roles  with a rolename:Usuario, ");
            Console.WriteLine("and return the id and name:\n");

            parameters =
                new SearchParameters()
                {
                    Filter = "RoleName:Partner",
                    Select = new[] { "id", "RoleName" }
                };

            results = indexClient.Documents.Search<Role>("*", parameters);

            WriteDocuments(results);

代码基于此示例:

https://github.com/Azure-Samples/search-dotnet-getting-started/blob/master/DotNetHowTo/DotNetHowTo/Program.cs

你可以试试

new SearchParameters()
    {
        Filter = "RoleName eq 'Partner'",
        Select = new[] { "id", "RoleName" }
    };

一般来说,由于 SDK 是开源的,您可以使用 GitHub 上的单元测试来查找有关如何使用一些更常用功能的示例。