vendredi 18 août 2017

Swagger integration in ASP.NET Web API project

Introduction

When you create a new ASP.NET Web API project,  you need to present your APIs in a simple and comprehensive way? You can use Swagger.
“Swagger is a simple yet powerful representation of your RESTful API. With the largest ecosystem of API tooling on the planet, thousands of developers are supporting Swagger in almost every modern programming language and deployment environment. With a Swagger-enabled API, you get interactive documentation, client SDK generation and discoverability.”

Add Swagger to Web API Project

To add Swagger to an ASP.NET Web API, we will install an open source project called Swashbuckle via NuGet.
When we install the package, a new config file was added: SwaggerConfig as mentioned in the picture below:

Swagger configuration 

In the configuration file added, we find the minimum configuration needed to enable Swagger and Swagger UI :
Now, when we start a new debugging session, we get the URI of our API and we navigate to Swagger: http://localhost:[PORT_NUM]/swagger
And if we want to display our APIs :


Now, when we start a new debugging session, we get the URI of our API and we navigate to Swagger: http://localhost:[PORT_NUM]/swagger

And if we want to display our APIs :

So what about documentation?

If we commented our code, we can enable XML Comments to display it in Swagger.

In Solution Explorer, right-click on the Web API project and click Properties. Click the Build tab and navigate to Output. Make sure XML documentation file is checked. You can leave the default file path. In my case it is bin\SwaggerSolution.Services.XML
After, we enable the comment in the configuration file of Swagger: SwaggerConfig
Let's Run now the project and take a look :)

I added this project as an extension to be able to use it easier in your project.

0 commentaires:

Enregistrer un commentaire