Owin Self-Host ile Swagger Web API Tools Kullanımı

Yazılım  /  13.01.2018

Merhabalar bu makalede restfull apilerimizi dökümante yapabildiğimiz son zamanlarda standart haline gelen Swagger’ ı self- host bir api da nasıl kullanabileceğimizi inceleyeceğiz. Ben uygulamayı bir console application üzerinde host yapacağım için bir console application oluşturuyorum. Daha sonra Nuget üzerinen Install-Package Microsoft.AspNet.WebApi.OwinSelfHost ile Owin kütüphanesini ekliyoruz. Kütüphane yüklendikten sonra yeni Startup.cs classını ekliyoruz.

Web API

MapHttpRoute ayarlarımızı tanımlıyoruz. Startup sınıfımızı tamamladıktan sonra projemize ValuesController isminde bir class ekliyoruz.

Web API

ValuesController içerisine ilgili metotlarımız tanımlıyoruz. Metotlar üzerinde comment eklediğimizde Swagger başığında bu commentler listelenecektir.

ValuesController tanımlaması bittikten sonra Program.cs içerisinde servisi ayağa kaldırmalıyız.

Web API

Projeyi build yapıp çalıştıralım.

Web API

Web API

Web Api sorunsuz bir şekilde yalıştı. Şimdi Swagger entegrasyonunu hazırlayalım. Self-Host uygulaması için Swagger entegrasyonunu Swashbukle kütüphanesi ile yapacağım. Install-Package Swashbuckle.Core kodu ile projemize ekliyoruz. Kütüphane projeye ekledikten sonra proje üzerinde Properties => Build => Output Path bölümündeki XML documentation file seçeneğini işartliyoruz. Bu şekilde comment çıktılarının yüklenen xml dosyasının yolunu alabiliyoruz.

Web API

Daha sonra Startup.cs içerisinde GetXmlCommentPath metodu ile Xml output path i döndürüyoruz.

Web API

Configuration ayarlarında Swagger’ı çalıştırmalıyız.

Web API

IncludeXmlComments tanımına GetXmlCommentPath’ ı set ediyoruz. Bu şekilde Self-Host uygulamaya Swagger entegrasyonunu eklemiş oluyoruz. Bir sonraki makalede görüşmek üzere.

Not: Bu makale için düzeltme yada ekleme yapmak isterseniz buradan pull request yapabilirsiniz.

Okuma Süresi
2 dk.
Okuyabilirsiniz