JavaScriptSerializer non è obsoleto dopo .net 3.5 SP1. Devo usare JavaScriptSerializer o il precedente DataContractJsonSerializer consigliato ?. Anche perché è stato reso obsoleto?Perché microsoft ha reso JavaScriptSerializer obsoleto prima di .net 3.5 SP1 e di nuovo attivo dopo?
Perché microsoft ha reso JavaScriptSerializer obsoleto prima di .net 3.5 SP1 e di nuovo attivo dopo?
risposta
Mi piacerebbe utilizzare JavaScriptSerializer
- ma in caso di dubbio, prendere in considerazione una terza opzione - Json.NET. Poiché è di terze parti, non è correlato alle decisioni della MS ... è ovviamente un'arma a doppio taglio, ma spesso è più semplice ottenere una correzione minore applicata a una libreria autonoma di terze parti.
scusa se ho dovuto inserire questo qui nei commenti ma, usando il servizio '.net 2.0 asmx' quale strada dovrei andare' DataContractJsonSerializer', 'JavaScriptSerializer' o 'http: // jayrock.berlios.de' non lo so se JSON.net è 2.0 compatibile. Stiamo solo costruendo un sistema di widget e stiamo trasmettendo i widget come dati JSON da webmethods. – Deeptechtons
@Deeptechtons bene, JavaScriptSerializer non è un'opzione su 2.0 e nemmeno DataContractJsonSerializer. Francamente, DataContractJsonSerializer tende a produrre atipico json. Vorrei: upgrade a 3.5/4.0 e usare JavaScriptSerializer, o vedere se JSON.net ecc è 2.0 friendly –
grazie & btw è JSON - RPc diverso da webmethods che restituisce oggetto? Http: //stackoverflow.com/questions/9291423/JSON-RPC-librerie-per-use-con-net – Deeptechtons
Non ho visto la spiegazione definitiva. Ci sono state alcune persone sconvolte quando JavaScriptSerializer è diventato obsoleto.
Scott Gu ha fatto this comment sul suo blog dicendo che pensava che contrassegnarlo come obsoleto non aveva senso.
JavaScriptSerializer è attualmente contrassegnato come obsoleto - anche se non sono sicuro del perché (stavo per chiedere a qualcuno di questo oggi). È molto utile Si noti che obsoleto non significa la rimozione in .NET 3.5 - sarà supportato almeno un'altra versione o due (o più lungo se posso convincerli).
Credo che forse li ha convinto :-)
ho continuato a usare JavaScriptSerializer come la sua molto più semplice rispetto al DataContractJsonSerializer.
Poiché il team MVC utilizza JavaScriptSerializer in modo così pesante, è improbabile che venga eliminato in futuro poiché MVC ha preso fuoco. –
Naturalmente [webAPI utilizza Json.Net] (https://blogs.msdn.microsoft.com/henrikn/2012/02/17/using-json-net-with-asp-net-web-api/) come standard . Quindi Microsoft non è più incatenato all'utilizzo di una di queste tecnologie. Credo che si parli di combinazione di tecnologie web api con MVC, quindi per quanto tempo questa dipendenza continui a essere mantenuta è ora discutibile. IMO Json.Net vince ogni volta. – Liam
- 1. API Web per .Net 3.5 SP1?
- 2. 'Prerequisiti del profilo client .NET Framework 3.5 SP1
- 3. Compatibilità con framework .NET: 3.5 Profilo client SP1 e 4.0
- 4. . NET 4.0 ha un nuovo GAC, perché?
- 5. È sicuro installare .Net 3.5 SP1 dopo .Net 4.0 RC è già stato installato?
- 6. utilizzando WIX3.6 per installare .NET Framework 3.5 SP1 con Burn
- 7. Can.NET 2010/MSBUILD può produrre XmlSerializers per .NET 3.5 SP1?
- 8. Perché il mio progetto Visual Studio Win32 richiede l'installazione di .NET 3.5 SP1?
- 9. non installa .NET Framework 3.5
- 10. Come visualizzare la finestra di dialogo di autenticazione in C# .Net 3.5 SP1
- 11. Esiste un profiler CLR che funzioni con .NET 3.5 SP1 e WPF?
- 12. Nuovo progetto .NET 3.5: quale tecnologia DAL utilizzare?
- 13. Come posso creare un programma di installazione WiX con un programma di installazione di .NET 3.5 sp1 completamente autonomo?
- 14. SSL e obsoleto TLS (1.0 e 1.1) per applicazione client Servizio Web su .Net 3.5
- 15. Approssimativamente, quale percentuale di utenti "normali" ha installato .NET 3.5?
- 16. Microsoft Fakes e .Net 4.0
- 17. Esecuzione di app .NET 3.5 su sistemi .NET 4 solo
- 18. CoreCLR e relazione Progetto mono dopo Microsoft open-sourced .NET.
- 19. lista annidata con JavaScriptSerializer
- 20. Perché Microsoft ha eliminato Velocity Distributed Cache come prodotto standalone?
- 21. Controllo delle dipendenze .NET prima dell'avvio di
- 22. XmlSerializer è diverso tra .NET 3.5 e CF.NET 3.5
- 23. string.join() in .net 3.5
- 24. Perché questo ha $ rootcope. $ Nuovo()?
- 25. ASP.NET MVC ha reso Web Form una piattaforma legacy?
- 26. Come possiamo integrare Microsoft FAST con SDL Tridion 2011 SP1?
- 27. Impossibile accedere a .NET framework source con VS2008 SP1
- 28. Perché Microsoft ha IHTMLDocument, IHTMLDocument2, ..., IHTMLDocument8?
- 29. .net 3.5 Profilo client. Completamente inutile? Mi sto perdendo qualcosa?
- 30. Strano differenza tra .NET 3.5 e .NET 4.0
Solo per aggiungere altro - JavaScriptSerializer e DataContractJsonSerializer non sono sempre compatibili l'uno con l'altro (DateTime, IIRC, è un dolore). –