yazıda ASP.NET ile JSON türündeki verileri okuma ve oluşturma işlemi anlatılmaktadır.

Açılımı "Javascript Object Notation" olan JSON, veri değişimi için, insanlar tarafından okunabilen bir biçim sunmaktadır. 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.

  • Number
  • String
  • Boolean
  • Array
  • Object
  • null

diyor Vikipedi, özgür ansiklopedi. Şu aralar twitter api üzerine çalıştığım bir uygulamada sık sık karşılaştığım bir yapı, JSON. Javascript dilinin bir parçası olduğu için, XML den daha kolay ve hızlı bir şekilde işlenebilmesi ve XML e göre daha az yer kaplaması büyük projelerde tercih edilmesinin bir numaralı sebebi. (Bkz. Twitter Api)

Örnek JSON Yapısı ;

JSON yapısını oluşturmak ya da okumak için James Newton tarafından hazırlanmış olan JSON.NET kütüphanesini kullanacağız. Bu kütüphaneyi kullanmanın birden fazla yolu var. Ben LINQ to JSON ile kullanmayı tercih ettim ve yazımda LINQ to JSON ?dan bahsedeceğim.

Öncelikle Visual Studio kullanarak bir web projesi oluşturalım ve http://james.newtonking.com/pages/json-net.aspx adresinden indirdiğimiz Newtonsoft.Json.dll ?yi web projemize referans olarak ekleyelim. Codebehind kısmına Newtonsoft.Json, ve Newtonsoft.Json.Linq namespace?lerini de ekledikten sonra örneğimize geçebiliriz. İlk olarak aşağıdaki gibi bir nesne oluşturalım.

public class uye    {        public string adi { get; set; }        public string nick { get; set; }        public string profileId { get; set; }    }

Nesnemizi tanımlayarak alt özelliklerine değer atayalım.

uye uye = new uye();uye.adi = "Abdurrahman GÜREL";uye.nick = "GÜREL";uye.profileId = "152193";

Bize JSON çıktısını oluşturan ve bir label?a atayan kodumuz da aşağıdaki gibi;

string json = JsonConvert.SerializeObject(uye);Label1.Text = json;

Kodun tamamı aşağıdaki gibi olmalı;

uye uye = new uye();uye.adi = "Abdurrahman GÜREL";uye.nick = "GÜREL";uye.profileId = "152193";//json çıktısı alınıyor.string json = JsonConvert.SerializeObject(uye);Label1.Text = json;

Ve JSON çıktığımızın görüntüsü;

Elimizdeki verilerle JSON çıktısı oluşturmak bu kadar. Şimdi de JSON çıktısını parse yani okuma işlemine bakalım. Açıklamalar kod üzerinde mevcut.

//json oluşturuluyorstring json = @"{""Ad"": ""Abdurrahman GÜREL"",""Nick"": ""GÜREL"",""ProfileId"": ""152193"",""Uzmanlik"": [ ""C#"", ""ASP.NET"", ""CSS"" ] }";//json parse ediliyorJObject j = JObject.Parse(json);//json değerleri label'lara atanıyor.Label2.Text = (string)j["Ad"];Label3.Text = (string)j["Nick"];Label4.Text = (string)j["ProfileId"];//uzmanlık alanı diziden oluştuğu için JArray nesnesi kullanılarak dizi ayıklanıyor ve değer label'a atanıyor.JArray ja = (JArray)j["Uzmanlik"];Label5.Text = (string)ja[0] + "," + (string)ja[1] + "," + (string)ja[2];

Kodun çıktısı aşağıdaki gibi olacaktır;

Ka

 

Bir önceki yazımız olan master page yapısı başlıklı makalemizde asp.net, asp.net dersleri ve master page hakkında bilgiler verilmektedir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir