Swagger-Net - Documentazione dinamica

Da Webmobili Wiki.

Con il Framework 4.8 , in un un contesto di WebApi, Swagger interviene generando una documentazione interattiva HTML che prende come sorgente i modelli dei dati e le loro descrizioni da codice sorgente.

Pagina del progetto: https://github.com/heldersepu/Swagger-Net

Ecco come procedere, avendo già creato un WebApi/Rest-Service:

  • Manage NuGet packages e installare Swagger-Net
  • È possibile testare subito runnando la soluzione alla pagina /swagger (se non funziona qui sono cazzi tuoi)
  • Si crea in automatico un file App_Start/SwaggerConfig.cs , centralizzato, dal quale è possibile configurare tutto.

Route personalizzata

Siccome runnare su /swagger ci fa schifo, cambiamo l'impostazione della route aggiungendo il parametro routeTemplate alla configurazione di Swagger SwaggerUI

GlobalConfiguration.Configuration.EnableSwagger("docs/{apiVersion}", c => { c.SingleApiVersion("v1", "Designbest REST-API"); /* ... */ })
GlobalConfiguration.Configuration.EnableSwaggerUi("doc/{*assetPath}", c => { c.DocumentTitle("Designbest REST-API"); /* ... */ })

In questo modo runniamo su /doc/index (ricordiamoci /index!).