今年5月,在 Build大会上,Azure FunctionsOpenAPI的功能支持(预览版)正式宣布。 当时,它最高支持 v3 运行时——.NET Core 3.1 版本。 最近,它发布了 .NET 5 隔离工作器支持包作为预览。在这篇文章中,我将回顾如何使用它并将其部署到 Azure。
注意:您可以在此 GitHub 存储库中找到本文中使用的示例代码:https://github.com/justinyoo/azfunc-openapi-dotnet
在 .NET 5 中创建 Azure Functions 应用程序
让我们使用Visual Studio来完成这个练习。在创建应用程序时,使用".NET 5(隔离)"运行时和"Http触发器"。
然后您将找到带有默认代码的HTTP端点。现在,在解决方案资源管理器上选择NuGet包管理器菜单。
在NuGet包管理器屏幕中,勾选"包括预发布"复选框,然后搜索Microsoft.Azure.Functions.Worker.Extensions.OpenApi包。在撰写本文时,NuGet打包程序版本是v0.8.1-preview。
OpenAPI扩展现在已经安装。
配置 HostBuilder
安装OpenAPI扩展之后,让我们配置HostBuilder。首先,打开Program.cs文件并删除现有的ConfigureFunctionsWorkerDefaults()方法。这是因为该方法默认使用System.Text.Json,我们不会使用它。
public static void Main(){
var host = new HostBuilder()
//