Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 19254|Yanıt: 2

[Kaynak] .NET'te Newtonsoft.Json kullanarak json'u dönüştürün, okuyun, yazınız

[Bağlantıyı kopyala]
Yayınlandı 14.12.2015 17:33:50 | | |

Öncelikle, JSON'un ne olduğunu anlamanız gerekiyor, JSON hakkında daha fazla bilgi edinmek için https://www.ibm.com/developerworks/cn/web/wa-lo-json/ tıklayabilirsiniz, burada JSON'u kısaca tanıtacağım:
    JSON, Javascrip{filter}t Object Natation anlamına gelir; bu, Javascrip{filter}t ile sunucu etkileşimi için ideal olan hafif bir veri alışverişi formatıdır. XML gibi, JSON da düz metin tabanlı bir veri formatıdır. JSON doğası gereği Javascrip{filtering}t için hazırlandığı için, JSON'un veri formatı çok basittir; basit bir String, Number, Boolean, bir dizi veya karmaşık bir Nesne nesnesini JSON'da aktarabilirsiniz.
     .NET ortamında, JSON verilerini serileştirmek ve serilikten çıkarmak için Json.net kullanıyoruz.
     JSON'u indirmek için Connect http://json.codeplex.com/ tuşuna tıklayarak başlayın. .NET eklentileri ve kodları.
     Sonra projenizde bir referans Newtonsoft.Json.dll oluşturun
     Namespace ekle: Newtonsoft.Json kullanılarak;
     Aşağıda JSON serileştirme ve serilikten çıkarma yöntemleri ve örnekleri yer almaktadır:
JsonConvert.SerializeObject(nesne değeri) ve bu yöntemin JsonConvert.SerializeObject(nesne değeri, parametreler JsonConverter[] dönüştürücüleri) bir aşırı yükleme yöntemi vardır.
JsonConvert.DeserializeObject(string value, Type type), deserileştirildi, aşırı yükleme yöntemi var JsonConvert.DeserializeObject(string value, Type type, params JsonConverter[] converters)
Bu iki yöntem temel serileştirme ve serilikten çıkarma gereksinimlerini karşılayabilir, aşağıdaki örneklere bakınız:
Öncelikle, aşağıdaki gibi bir Person sınıf kodu oluşturalım:
  kamu sınıfı Kişi
    {
        özel dize adı;
        public string Name
        {
            { adını geri getir; }
            { name = değer ayarla; }
        }
        özel bileşik yaş;
        public int Age
        {
            { yaş dövüşünü almak; }
            { yaş = değer ayarla; }
        }
    }
1) Serileştirme
System kullanmak;
System.Collections.Generic kullanılarak;
System.Linq kullanarak;
System.Web kullanarak;
System.Web.UI kullanılarak;
System.Web.UI.WebControl kullanarak;
Newtonsoft.Json kullanılarak;

isim alanı JSONnet
{
    Kamu Kısmi Sınıf Sınavı : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Kişi kişi = yeni Kişi();
            kişi. İsim = "GoldenEasy";
            kişi. Yaş = 25;
            string strSerializeJSON = JsonConvert.SerializeObject(kişi);
            Response.Write(strSerializeJSON);      
              
        }
    }
}
Çıktı:
{"Name":"GoldenEasy","Age":25}
2) seri diziden çıkarma
System kullanmak;
System.Collections.Generic kullanılarak;
System.Linq kullanarak;
System.Web kullanarak;
System.Web.UI kullanılarak;
System.Web.UI.WebControl kullanarak;
Newtonsoft.Json kullanılarak;

isim alanı JSONnet
{
    Kamu Kısmi Sınıf Sınavı : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            Kişi kişi = yeni Kişi();
            kişi. İsim = "GoldenEasy";
            kişi. Yaş = 25;
            string strSerializeJSON = JsonConvert.SerializeObject(kişi);           
            Person user = (Kişi)JsonConvert.DeserializeObject(strSerializeJSON, typeof(Person));
            Response.Write(kullanıcı. İsim);
         
        }
    }
}
Çıktı sonucu şudur: GoldenEasy




Önceki:【iOS Geliştirme Serisi Eğitimi Yaz Yayınlandı】iPhone Eğitimi
Önümüzdeki:İş Parçacığı Çok İş Parçacığı IsBack'in iş parçacıkları için önemli rolü
 Ev sahibi| Yayınlandı 13.01.2016 16:02:50 |
.net2.0'ı .net4.5 sürümlerine gönderin

Bin.rar (1.71 MB, İndirme sayısı: 2)
Yayınlandı 18.05.2016 17:53:51 |
Deserileştirme ayrıca şu şekilde yazılabilir: List<Model.WebCMS.FloorClass> floor = JsonConvert.DeserializeObject<List<Model.WebCMS.FloorClass>>(html);
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com