Bu yazıda ASP.NET ile JSON türündeki verileri okuma ve oluşturma işlemini anlatmaya çalışacağım.

Açılımı “Javascript Object Notation” olan JSON, veri değişimi için, insanlar tarafından okunabilen bir metin biçimidir. XML’in Javascript ile çok da iyi kullanılamamasından ötürü tercih edilir, klasik DOM ağaçlarından farksız bir yapıya sahiptir.

Bu makalemizde JSON ile ilgili aşağıdaki başlıklara değineceğiz.

  1. JSON yapısal olarak Nedir?
  2. C# ile JSON Verileri Oluşturmak
  3. C# ile JSON Verilerini Okumak

JSON Nedir ?

JSON (JavaScript Object Notation) hafif bir veri değişim formatıdır. İnsanların veriyi okuması ve yazması kolaydır. Makinelerin ayrıştırması ve oluşturması kolaydır. JavaScript Programlama Dili, ECMA-262 alt kümesini temel alır. JSON, tamamen dilden bağımsız olarak veri taşıma formatıdır.C ++, C #, Java, JavaScript, Perl, Python gibi bütün dillerde kullanılır. Bu özellikler JSON’u ideal bir veri değişimi dili yapar.Biz bu makalede C# ta nasıl kullanılır ona değineceğim.Aşağıda örnek bir JSON veri yapısı bulunmaktadır.

C# ile JSON Verileri Oluşturmak

Öncelikle daha önce Asp .Net Core 2.2 ile oluşturmuş olduğum Web Api projesi üzerinde örnekleme yapacağım. Öncelikle C# tarafındaki Member adlı objemi oluşturuyorum.

C# ta kullanabilmek için öncelikle Newtonsoft.Json namespace’nin projenizde ekli olması gerekiyor. Asp .Net Core’da default olarak SDK nin içinde geliyor. Eğer projenizde yok ise Nuget üzerinden indirebilirsiniz. Şuan versiyon olarak 12.0.2 mevcut ama kendini sürekli geliştiren bir kütüphanedir. Newtonsoft hakkında detaylı bilgiye buradan erişebilirsiniz.

Şimdi projemizde bir örnek yaparak oluşturduğumuz Member tipinden oluşan listeyi JSON dizisine çevirelim. OrnekJsonController’in Get metodunda aşağıdaki kodlarımı yazıyorum.

Projemizi çalıştırıp OrnekJsonControllerindaki Get Methoduna istek attığımızda JSON dizisine verilerimizin değiştiğini göreceğiz.

C# ile JSON Verilerini Okumak

Öncelikle json formatındaki bir string veriyi Member tipinden oluşan bir listeye çevirelim. Kodlar aşağıdaki gibidir.

Örnek metoda istek attığımızda çıktımız aşağıdaki gibidir.

Umarım faydalı olmuştur.
kaynak kodu