serialize newtonsoft net jsonconvert example .net json.net nuget

newtonsoft - ¿Cómo instalar la versión de json.net compatible con.net 4.0?



newtonsoft.json nuget (2)

Ejecute update-package -reinstall desde la consola del administrador de paquetes.

Para evitar el problema descrito aquí:

No se pudo cargar el tipo ''System.Runtime.CompilerServices.ExtensionAttribute'' del ensamblado ''mscorlib

Estoy intentando construir mi proyecto para convertir .net 4.0 en lugar de 4.5 (en Visual Studio 2013), pero obtengo los siguientes errores:

  • El tipo o el nombre del espacio de nombres ''Newtonsoft'' no se pudo encontrar (¿falta una directiva using o una referencia de ensamblado?)

    La referencia principal "Newtonsoft.Json" no se pudo resolver porque se creó con el marco ".NETFramework, Version = v4.5". Esta es una versión más alta que el marco actualmente orientado ".NETFramework, Version = v4.0".

Entonces me gustaría instalar una versión de json.net que sea compatible con .net 4.0. Veo que el paquete NuGet descargado contiene un directorio lib / 4.0 además de lib / 4.5, pero no puedo entender cómo hacer que el administrador de paquetes use esto en lugar de la versión 4.5.

¿Cómo puedo obtener mi solución de proyecto para buikd usando la versión de json.net compatible con .net 4.0 en lugar de la que solo funciona con .net 4.5?


La forma en que encontré para hacer esto es:

  1. Cierre su solución VS
  2. Edite manualmente todos los archivos packages.config en su solución para que apunte a la versión que desea (por ejemplo, para mí los cambié a id = "Newtonsoft.Json" versión = "6.0.3" targetFramework = "net40")
  3. Vaya a la carpeta de paquetes en el disco para su solución y elimine la versión allí
  4. Elimine Newtonsoft.Json dll y xml de la ruta de salida de su solución
  5. Elimine los directorios bin para los proyectos que usan json.net en su solución
  6. abre la solución en el estudio visual
  7. abra el administrador de paquetes (use los menús: herramientas, administrador de paquetes NuGet, administre los paquetes NuGet para la solución en mi versión de VS)
  8. En la parte superior del diálogo del administrador de paquetes, se queja de los paquetes de mssing: haz clic en Restaurar
  9. Vaya a la carpeta de paquetes en el disco para su solución y verifique que instaló la versión correcta
  10. Limpie la solución (de lo contrario, Newtonsoft.Json dll y xml no se reemplazarán en la ruta de salida)
  11. Cree y compruebe que el archivo DLL en la ruta de salida sea la versión correcta y el marco correcto (NewtonSoft coloca la versión .net en la descripción del archivo para las versiones anteriores)

Si alguno de estos pasos pudiera optimizarse, me encantaría saber cómo ...