İlk başta JSON olarak saklamak istediğimiz nesneleri belirtmemiz gerekir.
Örneğimizde Person isimli bir class kullanacağız.
[DataContract] public class Person { public Person() { } public Person(string firstname, string lastname) { this.FirstName = firstname; this.LastName = lastname; } [DataMember] public string FirstName { get; set; } [DataMember] public string LastName { get; set; } }
Burda yabancı olduğunuz özellikler sınıfa verilen DataContract ve propertylere verilen DataMember nitelikleri.
DataContract ve DataMember objeleri JSON ile serileştirme yaparken kullanmamız gereken niteliklerdir.
İlk başta Person nesnesini yeniden yaratıp içine örnek veriler atıyoruz.
Person myperson = new Person("Fatih", "Senel");
Daha sonra serileştirme işlemine başlıyoruz.
DataContractJsonSerializer json = new DataContractJsonSerializer(myperson.GetType());
Burda JSONSerializer ile kullanacağımız nesne tipini yani myperson ı belirledik.
MemoryStream nesnesine aldığımız verileri aktaralım ve ekrana yazdıralım.
MemoryStream ms = new MemoryStream(); json.WriteObject(ms, myperson); string jsonn = Encoding.Default.GetString(ms.ToArray()); Console.WriteLine(jsonn);
Peki ters serileştirme yani JSON dan .NET objesine çevirme nasıl olacak ?Gelin birlikte göz atalım.
MemoryStream mss = new MemoryStream(Encoding.UTF8.GetBytes(jsonn)); Person p=(Person)json.ReadObject(mss); Console.WriteLine("Ad :" +p.FirstName + "\n" + "Soyad :" + p.LastName); Console.ReadKey();
İlk önce jsonn nesnesini hafızaya atıyoruz.Daha sonra Person obje tipi ile JSON ı okuyoruz.Daha sonra ekrana yazdırıyoruz.
Gördüğünüz gibi oldukça basit.Başka bir JSON yazısında görüşmek üzere..
Ek bilgi: .NET 3.5 DataContractJsonSerializer
Bundan sonra blog da LINQ Tips başlığı altında LINQ hakkındaki ufak ipuçlarını ve örneklerini paylaşıcam.
Silverlight 2.0 Beta 2 kullanıcıların indirimine sunuldu.Silverlight bu sürümünde birçok yeniliği de beraberinde getiriyor.
. Video bitrate ini kullanıcının makinesine göre ayarlayabilme,
.DRM (Dijital Hak yönetimi),
.TabPanel kontrolü
.LINQ to JSON a destek
.ADO.NET Data Services desteği
.Expression Blend içerisinde Control Templating desteği
.Birkaç yeni kontrol daha eklendi.
.Datagrid e yeni özellikler eklendi:Kolonlara göre sıralama ve yerlerinin değiştirilmesi
vb. birçok başka özellik daha eklendi.
Ek bilgi:ScottGu nun Blogu
Ülkemizde WPF ve Silverlight konusunda 1 numara olan Daron Yöndem in bu konu hakkındaki bilgilendirici yazısı
Download
Silverlight 2.0 Beta 2: Download
Microsoft Silverlight Tools Beta 2 for Visual Studio 2008:Download
Expression Blend 2.5 June Preview:Download
Deep Zoom Composer:Download
ASP.NET MVC Framework ile ilgili daha fazla bilgi almak için ASP.NET MVC Framework adresindeki videoları izlemenizi öneririm.Scott Hanselman,gayet ayrıntılı ve hoş videolar hazırlamış.Bu videolar MVC Framework hakkında bilgi sahibi olmanızı sağlayacaktır.
JSON son zamanlarda dikkatimi çekmeye başlayan bir veri saklama formatı.NET içerisinde AJAX ve WCF le birlikte veri taşımada kullanılıyor.XML den sonra JSON yepyeni bir soluk getirmiş .NET camiasına.
JSON , .NET içerisinde 2 assembly kullanıyor:
using System.ServiceModel.Web;
using System.Runtime.Serialization.Json;
MVC framework ün 3. sürümü Microsoft tarafından download a sunuldu.Bu sürüm ile birlikte birkaç yeni değişiklik daha geliyor.
Ayrıntılar için :Scott Guthrie nin Blogu
Download için:MVC Framework Download
Yazılım ve donanım dünyasından en son haberlerle buluşmak üzere…