NuGet Package Manager: ‘AutoMapper’ ya tiene una dependencia definida para ‘Microsoft.CSharp’

Estoy intentando agregar AutoMapper como una dependencia a un proyecto usando NuGet en Visual Studio Premium 2012, pero falla.

Dice:

Operación fallida
‘AutoMapper’ ya tiene una dependencia definida para ‘Microsoft.CSharp’.

Puedo agregar otras dependencias.

Estoy usando la última versión del administrador de paquetes para VS 2012:

NuGet Package Manager 2.8.60318.667

¿Alguna idea de qué debo verificar?

El problema es que su Administrador de paquetes NuGet es demasiado viejo. Necesita NuGet 2.12 ya que esto es compatible con los marcos .NETStandard más nuevos que está usando el paquete AutoMapper 5.0.1 NuGet.

AutoMapper tiene una dependencia de grupo que especifica un marco de destino de .NETStandard. Dado que su versión de NuGet Package Manager es demasiado antigua, no reconoce este marco de destino y lo convierte en un marco de destino Desconocido y usted termina con marcos duplicados, ya que .NETStandard se usa varias veces en ese paquete NuGet. Esto causa el error:

'AutoMapper' already has a dependency defined for 'Microsoft.CSharp' 

Desafortunadamente, NuGet 2.12 no está disponible para Visual Studio 2012, pero está disponible para Visual Studio 2013.

Entonces, o necesita actualizar a Visual Studio 2013 o superior, o tendrá que usar el paquete anterior AutoMapper NuGet, que no es compatible con .NETStandard.

Parece ser un problema con la versión actual de automapper:

AutoMapper 5.0.0 Martes, 28 de junio de 2016

Intenté con la versión anterior y funciona:

 PM> Install-Package AutoMapper -Verbose Install-Package : 'AutoMapper' already has a dependency defined for 'Microsoft.CSharp'. At line:1 char:16 + Install-Package < <<< AutoMapper -Verbose + CategoryInfo : NotSpecified: (:) [Install-Package], InvalidOperationException + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand PM> Install-Package AutoMapper -Version 4.2.1 Installing 'AutoMapper 4.2.1'. Successfully installed 'AutoMapper 4.2.1'. 

Entonces, si no puede actualizar NuGet Package Manager, la respuesta es:

 PM> Install-Package AutoMapper -Version 4.2.1 

Terminé necesitando actualizar NuGet.exe que se incluyó en la solución para poder crear paquetes NuGet ejecutando:

nuget.exe update -self

Tuve el mismo problema en VS2013. Tuve que actualizar a la actualización 5 de VS2013 y obtener la última distribución de Nuget para VS2013 en https://dist.nuget.org/visualstudio-2013-vsix/v2.12.0/NuGet.Tools.vsix

una vez hecho esto, pude usar el paquete Automapper 5.0.2

Vaya a Visual Studio> Herramientas> Extensión y Actualizaciones

Buscar actualizaciones en el menú de acordeón izquierdo, Ir a Galería de Visual Studio.

Encontrarás una actualización para Nuget.

Actualice el paquete nuget e intente instalar o comstackr el proyecto.

Gracias, GT

Otra solución alternativa si tiene problemas con VS2012 y la versión anterior de Nuget:

  • Busque la carpeta Caché del Administrador de paquetes Nuget de VS 2012 (con ToolsOptionsNuget Package Manager )
  • Abra AutoMapper.5.xxnupkg con su herramienta Zip favorita
  • Modifique el archivo AutoMapper.nuspec – Simplemente .NETFramework4.5 todas las dependencias excepto .NETFramework4.5
  • Agregue la carpeta de caché como fuente Nuget (también en ToolsOptionsNuget Package Manager )
  • Instale Automapper con la consola o la GUI, pero asegúrese de elegir primero la carpeta de caché recién agregada como fuente del paquete.

Por supuesto, la próxima versión de Automapper probablemente necesite ser adaptada, también, para poder instalarla.

Esto parece una discrepancia entre la versión .NET utilizada por el paquete Automapper y su proyecto. ¿Puedes confirmar la versión de .NET que está usando tu proyecto?

Automapper 6.0.2 – nuget 2.8.8 proporciona este error. Necesita actualizar a 3.4.4 para que funcione.

Se eliminó CSharp y AutoMapper. Instaló CSharp (4.0.0.0) primero y luego agregó Automapper (6.1.1.0). Esto resolvió el problema para mí.

Observé este problema exacto al abrir un proyecto con Visual Studio 2010.

Después de abrir con VS2017, pude instalar AutoMapper sin ningún error.