Skip to content

Latest commit

 

History

History
58 lines (49 loc) · 1.86 KB

File metadata and controls

58 lines (49 loc) · 1.86 KB
  • Use Swashbuckle (Swagger UI) api explorer with zero midifications to your code
  • Get full Swagger extensibility as in MVC

NuGet package

v1 https://www.nuget.org/packages/AzureFunctions.Worker.Extensions.AspNetCore.ApiExplorer

v2 https://www.nuget.org/packages/AzureFunctions.Worker.Extensions.Swashbuckle

🔴Migration to v2 Azure Functions SDK🔴

Microsoft suggest to use FunctionsApplicationBuilder over generic HostBuilder that is why v2 package will only support this api.

v1

var host = new HostBuilder()
    .ConfigureServices((hostingContext, services) =>
    {
        // additional worker services configuration
    })
    .ConfigureFunctionsWebApplication(worker =>
    {
        worker
            .AddAspNetCoreIntegration()
            .AddMvcOptions(mvcOptions =>
            {
                // additional MVC options customization
            });

        worker.UseAspNetCoreMiddleware(app =>
        {
            app.UseFunctionSwaggerUI();  // <--- magic happens here
        });
    })
    .Build();

v2

var builder = FunctionsApplication.CreateBuilder(args);

// should be used for HTTP triggered APIs
builder.ConfigureFunctionsWebApplication();

// should be called after "ConfigureFunctionsWebApplication"
builder
    .ConfigureAspNetCoreMvcIntegration(mvcBuilder =>
    {
        // additional MVC builder customization
        mvcBuilder.AddMvcOptions(mvcOptions => { });
    })
    .UseAspNetCoreMiddleware(app =>
    {
        app.UseFunctionSwaggerUI();  // <--- magic happens here
    });