Estoy intentando utilizar JavaScriptSerializer
en mi aplicación.
Inicialmente recibí
No se puede encontrar JavaScriptSerializer
y lo solucioné añadiendo
using System.Web.Script.Serialization;
Pero entonces la subpalabra clave Script
aparece subrayada con una línea azul:
El tipo o espacio de nombres 'Script' no existe en el espacio de nombres 'System.Web' (¿le falta una referencia de ensamblado?)
Así que añadí al proyecto una referencia a:
C:\program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.0\System.Web.Extensions.dll
Eso no ayudó. Sigo recibiendo el mismo subrayado azul con el mismo error. La referencia está marcada con un signo de exclamación amarillo de advertencia:
Probé las soluciones sugeridas en este hilo, pero como indicó @user781490, no ayudaron en mi situación.
¿Alguna idea de cómo resolver esto?
He encontrado esta entrada del foro MSDN que sugiere dos soluciones a su problema.
Primera solución (no recomendada):
Buscar la carpeta .Net Framework 3.5 y 2.0
Copie System.Web.Extensions.dll de 3.5 y System.Web.dll de 2.0 a la carpeta de la aplicación
Añade la referencia a estos dos ensamblados
Cambia la propiedad referenced assemblies, poniendo "Copy Local" a true Y construir para probar su aplicación para asegurarse de que todo el código puede trabajar
Segunda solución (Utilizar una clase / biblioteca diferente):
El usuario que publicó la pregunta afirmó que Uri.EscapeUriString
y How to: Serialize and Deserialize JSON Data le ayudaron a replicar el comportamiento de JavaScriptSerializer
.
También puede intentar usar Json.Net. Es una librería de terceros y bastante potente.