bajar la aplicación .net 4.5 a 4.0

Quiero degradar una biblioteca .net de framework versión 4.5 a .net 4.0.

Tengo varias libs instaladas usando nuget:

  • Microsoft.AspNet.WebApi.Client y sus dependencias:
  • Newtonsoft.Json
  • System.Net.Http (bibliotecas de cliente HTTP de Microsoft .Net 4)

Yo hago lo siguiente :

  • En la configuración de cada proyecto en mi solución, establezco el marco de destino en 4.0 . Después traté de reconstruir mi solución pero, por supuesto, sin éxito debido a un error. The type or namespace name 'Newtonsoft' could not be found (are you missing a using directive or an assembly reference?) , Lo mismo para las bibliotecas del Cliente HTTP

  • Usando nuget ui manager, eliminé dependencias e intenté reinstalar . Pero hay un error. Could not install package 'Microsoft.AspNet.WebApi.Client 5.1.1'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.0', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author. Could not install package 'Microsoft.AspNet.WebApi.Client 5.1.1'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.0', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.

Mi pregunta es: ¿puedo degradar este proyecto o debo reemplazar estas bibliotecas con algunas que admiten .net 4 y reescribir algunas partes del código?

.NET 4.5 es una actualización in situ para .NET 4.0, lo que significa que el CLR es el mismo, pero se agregan nuevas bibliotecas, así como correcciones de errores y mejoras de rendimiento, y ambos apuntan a .NET CLR 4.

En su caso, como ya se instaló .NET 4.5, la actualización 4.5 reemplaza completamente el tiempo de ejecución de .NET 4.0.

Incluso si cambia su proyecto a .NET 4.0, la biblioteca que se usa en su interior aún apunta a 4.5 pero está restringida a las disponibles para 4.0, pero los comportamientos pueden ser diferentes a lo que usted espera en .NET 4 puro.

Así que para degradar su proyecto de 4.5 a 4.0, estoy de acuerdo con usted, necesita:

  1. Reinstale su marco .NET solo en .NET 4 (si ya no necesita .NET 4.5)
  2. cambiar proyecto para apuntar a .NET 4
  3. reescriba alguna parte del código que no es compatible con .NET 4 (por ejemplo, en su caso, Microsoft.AspNet.WebApi.Client 5.1.1 viene con WebApi2 en .NET 4.5, y debe degradarlo para que use la forma como .NET 4 proporcionado)

Hanselman y Rick lo habían explicado muy bien.