JavaScriptSerializer, .net 3.5 SP1'den sonra geçersiz değil. JavaScriptSerializer veya önceden önerilen DataContractJsonSerializer kullanmalı mıyım? Ayrıca neden eskimiş oldu?Neden microsoft JavaScriptSerializer'ı .net 3.5 SP1'den önce eski haline getirdi ve bundan sonra tekrar aktif hale geldi?
cevap
Mutlu bir şekilde JavaScriptSerializer
kullanın - ama şüphesiz üçüncü bir seçeneği düşünün - Json.NET. 3. parti olduğu için, MS kararlarıyla ilgisi yok ... ki bu da iki ucu keskin bir kılıçtır - ancak tek başına üçüncü taraf bir kütüphaneye uygulanan küçük bir düzeltmenin yapılması genellikle daha kolaydır.
Üzgünüm, buradaki yorumları buraya koymam gerekiyordu, ama '.net 2.0 asmx servisi 'ile hangi yolu kullanmalıyım? DataContractJsonSerializer',' JavaScriptSerializer 'veya' http: // jayrock.berlios.de' bilmiyorum JSON.net 2.0 uyumlu ise. Sadece bir widget sistemi oluşturuyoruz ve widget'ları web ölçümlerinden JSON verileri olarak aktarıyoruz. – Deeptechtons
@Deeptechtons iyi, JavaScriptSerializer 2.0'da bir seçenek değil ve DataContractJsonSerializer. Açıkçası, DataContractJsonSerializer atipik json üretme eğilimindedir. Ben de: 3.5/4.0 yükseltme ve JavaScriptSerializer kullanın ya da JSON.net vb 2.0 dostu –
olup olmadığını görmek teşekkür ederim & btw JSON - RPC webmethods dönen nesne herhangi bir farklı? Http: //stackoverflow.com/questions/9291423/json-rpc-kütüphaneler kullanıma-ile-net – Deeptechtons
Kesin açıklama görmedim. JavaScriptSerializer eski haline getirildiğinde oldukça az sayıda insan üzüldü.
Scott Gu, blogunda this comment'u yaptı.
JavaScriptSerializer halen eski olarak işaretlenir - I (bu bugün birilerine soracaktım) neden emin değilim ancak. Bu çok kullanışlı. Geçersiz olan, .NET 3.5'de kaldırma anlamına gelmez - en azından başka bir sürüm veya iki (veya onları ikna edebilirsem daha uzun) desteklenir.
Belki o ben yalındır DataContractJsonSerializer daha onun çok daha fazlasını JavaScriptSerializer kullanmaya devam
:-) ikna yoktu sanırım.
MVC ekibi çok güçlü bir şekilde JavaScriptSerializer kullandığı için, MVC bu ateşi yakaladığı için gelecekte düşürülmesi olası değildir. –
Elbette [webAPI, Json.Net'i kullanıyor] (https://blogs.msdn.microsoft.com/henrikn/2012/02/17/using-json-net-with-asp-net-web-api/) standart olarak . Bu nedenle, microsoft artık bu teknolojilerin herhangi birini kullanmak için zincirlenmemiştir. Web api teknolojilerini MVC ile bir araya getirme konusundaki tartışmalar olduğuna inanıyorum, bu yüzden bu bağımlılığın sürdürülmesinin ne kadar sürdüğü sorgulanabilir. IMO Json.Net her zaman kazanır. – Liam
- 1. , .NET Framework 3.5
- 2. Net 4.0 RC daha sonra kuruldu. Net 3.5 SP1 daha önce kuruldu mu?
- 3. .NET Özellikleri Java'ya Ek Açıklamalar: Önce hangisi geldi?
- 4. Microsoft .Net framework 3.5 SP1 Kurulumu Başarısız Oldu
- 5. .NET 3.5 SP1 ve aspnet_client Crystal Raporları
- 6. .NET 3.5'te StringBuilder'ı yeniden boş hale nasıl getirebilirim?
- 7. .NET 3.5 SP1, ASP.NET
- 8. Microsoft .NET Framework İstemci Profili 256 MB Neden?
- 9. bir .Net 3.5 Uygulaması
- 10. Microsoft .net framework sürümleri ve alt bölümleri
- 11. Perl'deki dosya modu ne zaman açık bir argüman haline geldi?
- 12. .NET 3.5 uygulamalarını yalnızca .NET 4 üzerinde çalıştıran .NET sistemleri
- 13. NUnit .NET 3.5 ile çalışır mı?
- 14. .NET 2.0, .NET 3.5 yükleyicisine dahil mi?
- 15. .NET Framework 4.0 yükleyicisinin boyutu neden 3,0/3.5'den küçük?
- 16. .NET 3.5 ifade ağaçlarında atama
- 17. JQERY kullanarak .NET Framework 3.5
- 18. seçin ve sonra tekrar ayrı değerler seçin
- 19. .NET 4.0 neden bu diziyi .NET 3.5'ten farklı bir şekilde sıralıyor?
- 20. WCF 3.5 ve UDP
- 21. sonra ve yapıcı interceptor önce
- 22. Donduru modda interneti sürekli aktif hale getirme Marshmallow ve Nougat
- 23. Verileri kaydetmeden önce ve sonra neden farklı sonuçlar aldım?
- 24. Oturum açma, ASP.NET 4.0'a yükseltildikten sonra başarısız oluyor. 3.5
- 25. Android: Nasıl bir Spinner görünmez ve sonra tekrar görünür hale getirilir?
- 26. İşlev neden tekrar kullanılmıyor?
- 27. Yineleyicim neden tekrar geliştiriliyor?
- 28. .gitignore tüm dosyaları yok sayıp sonra tekrar tekrar * .foo
- 29. bundan bootstrap
- 30. Animasyon içinde willSelectRowAtIndexPatifikasyondan sonra tekrar
Sadece eklemek için - JavaScriptSerializer ve DataContractJsonSerializer her zaman birbiriyle uyumlu değildir (DateTime, IIRC, bir acıdır). –