你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

教程:在 Azure 容器应用 上将Azure AI 搜索添加到 C# Web 应用

注释

Azure AI 搜索可通过Azure门户REST APIAzure SDK获取。 它也是 Foundry IQ 的基础;Foundry IQ 是一个托管式知识层,可将企业内容转化为供 Microsoft Foundry 门户中的智能体使用的、可复用且具备权限感知能力的知识库。

本教程将构建一个网站,用于搜索书籍目录,并将网站部署到Azure 容器应用。 部署使用Azure开发人员 CLI(azd)和托管标识作为Azure AI 搜索的默认身份验证方法。

在本教程中,你将了解:

  • 使用Azure开发人员 CLI 部署Azure AI 搜索并自动设定索引种子。
  • 在 C# 应用中集成搜索查询、建议、分面、分页和文档查找。
  • 将应用部署到使用托管标识作为默认身份验证方法的Azure 容器应用。

该示例有什么作用?

此示例网站提供对 10000 本书籍的目录的访问权限。 你可以通过在搜索栏中输入文本来搜索目录。 在你输入文本时,网站使用搜索索引的建议功能自动补全文本。

查询完成后,网站会显示包含部分详细信息的书籍列表。 可以选择一本书以查看其完整详细信息,这些详细信息存储在搜索索引中。

屏幕截图显示浏览器窗口中的示例应用。

搜索体验包括:

  • 搜索 - 为应用程序提供搜索功能。
  • 建议 - 在搜索栏中键入用户时提供建议。
  • 分面和筛选器 - 提供按作者或语言筛选的分面导航结构。
  • 分页结果 - 提供用于滚动结果的分页控件。
  • 文档查找 - 按 ID 查找文档以检索详细信息页的所有内容。

如何对示例进行组织?

示例代码包含以下组件:

应用 目的 GitHub存储库位置
client React 应用(呈现层)用于显示具有搜索的书籍。 它调用 API。 /azure-search-static-web-app/client
api C# Azure Functions API(业务层),托管在 Azure 容器应用 上的容器中,该容器使用 .NET SDK 调用 Azure AI 搜索 API。 /azure-search-static-web-app/api
bulk-insert .NET创建索引并加载文档的项目。 部署 azd 通过 postprovision 挂钩自动运行此部署。 /azure-search-static-web-app/bulk-insert
infra Bicep用于azd部署Azure AI 搜索、Azure 容器应用和支持资源的基础结构。 Azure-Samples/azure-search-static-web-app

设置开发环境

为本地开发环境安装以下软件。 该azd up命令预配所有Azure资源,包括Azure AI 搜索,因此无需事先创建它们。

本教程不会在本地运行 Azure Functions API。 若要在本地运行,请安装 Azure Functions Core Tools

使用 Git 克隆搜索示例

可以从本地克隆部署示例。 该azd up命令从本地存储库读取应用程序和基础结构文件,生成容器,预配Azure资源,并将客户端和 API 部署到Azure 容器应用。

  1. 在 Bash 终端中,将示例应用程序克隆到本地计算机。

    git clone https://github.com/Azure-Samples/azure-search-static-web-app.git
    
  2. 在同一 Bash 终端中,转到此搜索示例的存储库目录。

    cd azure-search-static-web-app
    
  3. 使用 Visual Studio Code 命令code .打开存储库。 除非另有指定,否则请完成Visual Studio Code中的剩余任务。

    code .
    

后续步骤