Bu yazımda sizlere ASP NET Web API ile nasıl dinlendirici APIler oluşturabileceğimizi göstereceğim.
Hadi başlayalım:
Adım 1: Visual Studio’yu açın ve yeni Proje oluşturun.

Adım 2: Projenize tercihinize göre bir ad verin. Benim durumumda bunu myRestAPI olarak adlandırıyorum. Ardından “OK”a basın.

Adım 3: Aşağıda gösterilen şablon pencerenizden Empty seçin ve şablon seçeneğinin altındaki onay kutusundan Web API’yi işaretleyin.

Solution Explorer panelinde Empty(Boş) şablon şu şekilde görünecektir.

Adım 4: Şimdi Web API Controller sınıfını Controllers klasörünüze ekleyin. Eklemek için Controllers klasörünüze sağ tıklayın, Add ve ardından New Item… seçin.

Adım 5: New Item penceresinden Web API Controller Class(v2) öğesini arayın. Sınıf denetleyicinizi adlandırın ve ardından Add butonuna basın.

Aşağıdaki resim, API Denetleyici Varsayılan rotasıdır:

Adım 6: Bu dosyaya (MyAPIController) geçmeden önce Model klasörü içinde ek bir sınıf oluşturalım. Bu, daha sonra örnek verilerimizi oluşturmak için bir model olarak kullanılacaktır. Eklemek için Model klasörünüze sağ tıklayın, Add ve ardından New Item seçin.

Adım 7: Modelinizi adlandırın. Benim durumumda, onu myModel olarak adlandırıyorum.

Adım 8: myModel sınıfını açın ve ardından özellikleri aşağıda bildirin.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace myRestAPI.Models { public class myModel { public int Id { get; set; } public string Name { get; set; } public string LastName { get; set; } public string Number { get; set; } } } |
Adım 9: Controller klasörünüzün içinde MyAPIController‘ı açın. API Denetleyicinize benimkiyle aynı ad verirseniz, kodunuzu kopyalayıp aşağıdaki kodla değiştirebilirsiniz. Değilse, aşağıdaki koddan metotları manuel olarak oluşturun.
Metotlar:
GetList() >> Modelimizle oluşturduğumuz tüm verileri döndür.
GetName(int id) >> Belirli verileri kimliğe göre döndür.
Model >> myModel sınıfımızda temel oluşturduğumuz kukla liste.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; using myRestAPI.Models; namespace myRestAPI.Controllers { public class MyAPIController : ApiController { myModel[] model = new myModel[] { new myModel {Id=1,Name="Hayri",LastName="KOÇ",Number="12345"}, new myModel {Id =2,Name="Ahmet",LastName="CAN",Number="54321" }, new myModel { Id = 3,Name="Hüseyin",LastName="ÖZ",Number="555222" } }; public List<myModel> GetName(int id) { List<myModel> list = new List<myModel>(); var name = model.FirstOrDefault(m => m.Id == id); //ID ID eşit olduğu verileri seçin if (name == null) { return list; //if null dönerse boş liste döndürür. } list.Add(new myModel //boş değilse { Id = name.Id, Name = name.Name, LastName = name.LastName, Number = name.Number }); return list; } } } |
Solution Explorer Genel Bakış – Restful Web Service
WebApiConfig >>, Api Denetleyicisi için varsayılan url yolunu içerir
myAPIController >> Yöntemimizi içeren Api denetleyicisi
myModel >> Model veri özelliklerini içerir.

Adım 10: GetList()‘e erişmek için. Projenizi çalıştırın ve şu URL’ye gidin localhost:XXXX/api/myAPI

Adım 11: GetName(int id) >> localhost’a erişmek için: localhost:XXXX/api/myAPI/GetName?Id=1

ÖZET
MyAPIController:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; using myRestAPI.Models; namespace myRestAPI.Controllers { public class MyAPIController : ApiController { myModel[] model = new myModel[] { new myModel {Id=1,Name="Hayri",LastName="KOÇ",Number="12345"}, new myModel {Id =2,Name="Ahmet",LastName="CAN",Number="54321" }, new myModel { Id = 3,Name="Hüseyin",LastName="ÖZ",Number="555222" } }; public IEnumerable<myModel> GetList() { return model; } public List<myModel> GetName(int id) { List<myModel> list = new List<myModel>(); var name = model.FirstOrDefault(m => m.Id == id); //ID ID eşit olduğu verileri seçin if (name == null) { return list; //if null dönerse boş liste döndürür. } list.Add(new myModel //boş değilse { Id = name.Id, Name = name.Name, LastName = name.LastName, Number = name.Number }); return list; } } } |
myModel:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace myRestAPI.Models { public class myModel { public int Id { get; set; } public string Name { get; set; } public string LastName { get; set; } public string Number { get; set; } } } |
Şimdi ASP NET Web API ile başarılı bir şekilde dinlendirici API’ler oluşturduk. Umarım bu size gelecekteki projeleriniz için bir fikir verir. Okuduğunuz için teşekkürler.
Mutlu kodlama!!
Yorum Yap