15 Temmuz 2014

ASP.NET MVC Web API 1

Merhabalar;

Bu yazımda lisans bitirme projemde de kullandığım Asp.Net MVC Web API'den bahsedeceğim ve birlikte örnek bir proje açacağız.

API açılım olarak Application Programming Interface demektir ve Asp.Net MVC 4.0 ile birlikte gelmiştir. Web API'yi verilerimize istediğimiz kadar uygulamadan erişmemizi sağlayan ve REST mimarisini kullanan servisler diye niteleyebiliriz. Platform bağımsızdır. Aslında kafamızda şöyle canlandırabiliriz; web veya mobil bir uygulama yapacağız ama verilerimiz uygulamayı hantallaştıracak kadar çok. Bir veritabanı oluşturuyoruz. Daha sonra uygulamanın kullanıcı arayüzünü oluşturuyoruz ama bu iki farklı yapı nasıl bağlanacak? Web API'yi tam da burada kullanmamız gerekecek. Çünkü uygulamaya veri taşıyacak ve uygulamadan veritabanına veri getirecek olan servis Web API'dir. Şimdi biraz daha netleştiğini düşünüyorum.

REST mimarisi http istekleriyle gerçekleştirilebilen bir takım metodları destekler ki bu metodların başlıcaları Get ve Post'tur. Database'imizdeki verilerimize bu metodları kullanarak browser üzerinden erişebiliriz. Çıktılarımızı ister Json ister XML formatta alabiliriz.

Küçük bir not: Ben bu yazı dizimde verilere hem browser'dan hem de sıkça kullandığım Advanced REST Client* uygulaması ile erişeceğim.


Şimdi bir örnek uygulama açalım:

İlk adım olarak Visual Studio 2013'te bir proje açıyoruz ve New Project diyoruz. Ardından ASP.NET MVC 4 Web Application'ı seçiyoruz:


Bu adımda Web API'yi seçiyoruz. Aşağıdaki bölümden de isterseniz Web API'nin unit testlerini yazabileceğiniz test projesini de oluşturabilirsiniz.


Karşımıza gelen proje boş bir proje değil. İçinde Model ve Controller'ları olan bir proje. Web API yazarken genelde Empty seçilir ama ben örnek olması açısından kendiliğinden bir takım özellikleri olsun diye Web API seçeneğini seçtim.


Bir sonraki yazımda Model, View ve Controller yapılarına da kısaca değinip Web API'nin çalışma prensibini inceleyeceğiz.

Hoşçakalın.




(*)Advanced REST Client: Bir Google Chrome uygulamasıdır. Web API'yi test etmek için kullanılır.

Hiç yorum yok:

Yorum Gönder