Parece que no puedo encontrar el JavaScriptSerializer
objeto ni el System.Web.Script.Serialization
espacio de nombres dentro de Visual Studio 2010. Necesito serializar algo a JSON, ¿qué se supone que debo usar?
Y sí, ya incluí el System.Web.Extensions
(en System.Web.Extensions.dll) dentro del proyecto. ¿Por eso estoy sorprendido?
- Sé que
System.Web.Extensions
fue marcado como obsoleto en 3.5
c#
visual-studio
jsonserializer
Prisionero CERO
fuente
fuente
Respuestas:
Compruebe si incluyó la versión .net 4 de
System.Web.Extensions
- también hay una versión 3.5, pero no creo que funcione.Estos pasos me funcionan:
System.Web.Extensions
(4.0)JavaScriptSerializer
Program.cs ahora :-)fuente
References
y hagaAdd Reference
, luego deAssemblies->Framework
seleccionarSystem.Web.Extensions
.fuente
Desde el primer resultado de búsqueda en google:
http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx
Por lo tanto, incluir
System.Web.Extensions.dll
como referencia.fuente
Estoy usando Visual Studio 2015 y finalmente me encontré con esta publicación.
Si para usar
Debe hacer clic con el botón derecho en las referencias y en Ensamblajes -> Marco elegir
Luego agregue su referencia
fuente
Así es como se obtiene JavaScriptSerializer en su aplicación, apuntando
.NET 4.0
(completo)¡Esto debería permitirle crear un nuevo
JavaScriptSerializer
objeto!fuente
está en ensamblado: System.Web.Extensions (System.Web.Extensions.dll)
fuente
¿Está apuntando al .NET 4 framework o al .NET 4 Client Profile?
Si está apuntando a este último, no encontrará esa clase. También es posible que le falte una referencia, probablemente una extensión dll.
fuente
Para aquellos que parecen estar siguiendo las respuestas anteriores pero aún tienen el problema (por ejemplo, vea el primer comentario sobre la pregunta del afiche):
Probablemente esté trabajando en una solución con muchos proyectos. El proyecto en el que parece estar trabajando hace referencia a otros proyectos, pero en realidad está modificando un archivo de uno de los otros proyectos. Por ejemplo:
System.Web.Extensions
Pero si el archivo que está modificando para usar
System.Web.Script.Serialization
está en el proyecto B, entonces también necesitará agregar una referenciaSystem.Web.Extension
en el proyecto B.fuente
¿Incluiste una referencia a
System.Web.Extensions
? Si hace clic en su primer enlace, dice en qué ensamblaje se encuentra.fuente
Tienes que agregar la referencia al proyecto.
En Assemblies, hay un System.Web.Extensions Agregue eso.
Una vez hecho esto, ponga:
Eso funcionó para mí.
fuente
Para que lo sepas, estoy usando Visual Studio 2013 y he tenido el mismo problema hasta que usé las Propiedades del proyecto para cambiar a 3.5 framework y volver a 4.5. Esto por alguna razón registró el .dll correctamente y pude usar System.Web.Extensions .
fuente
Puede usar otra opción que es Newtonsoft.Json, puede instalarlo desde NuGet Package Manager.
Herramientas >> Nuget Package Manager >> Package Manager Console emitiendo un comando
Install-Package Newtonsoft.Json
o
mediante el uso de la GUI en Herramientas >> Administrador de paquetes Nuget >> Administrar paquetes NuGet para la solución ...
fuente