visual studio para microsoft manager instalar descargar cli visual-studio visual-studio-2012 nuget

visual-studio - para - nuget package manager visual studio 2017



advertencia: Todos los proyectos que hacen referencia a MyProject.csproj deben instalar el paquete nuget Microsoft.Bcl.Build (4)

Tengo una aplicación ASP.NET MVC 4 desarrollada en VS 2012. La aplicación consiste en un proyecto principal (MyProject), un proyecto de prueba de unidad (MyProject.Tests), un proyecto de implementación de Azure (MyProject.Azure) y un par de proyectos de biblioteca de propósito general.

Cuando hago clic derecho en la solución o el proyecto principal y selecciono Administrar paquetes NuGet, veo un montón de actualizaciones de Microsoft que aparentemente han estado disponibles en el último mes. Si hago clic en el botón Actualizar todo, las actualizaciones aparentemente están instaladas sin ningún problema obvio, pero cuando construyo la solución recibo este mensaje de error DOS VECES:

warning : All projects referencing MyProject.csproj must install nuget package Microsoft.Bcl.Build

Ok, entonces tengo dos proyectos que hacen referencia a MyProject: MyProject.Tests y MyProject.Azure. Puedo hacer clic con el botón derecho en MyProject.Tests, seleccionar ManageNuGet Packages y agregar Microsoft.Bcl.Build. Eso elimina una de las dos advertencias. Pero VS no me da una opción para administrar paquetes NuGet para el proyecto MyProject.Azure .

¿Cómo agrego el paquete Microsoft.Bcl.Build al proyecto de implementación de Azure?

EDITAR:

Gracias al swell usuarios, ahora sé que se ha abierto un problema de Microsoft Connect para este problema here .


Desactivé esta opción, ahora funciona bien.


Enfrenté el mismo problema e intentaba actualizar Microsoft.Bcl.Build.targets; que no ayudó.

Después de algunas investigaciones, se encontró que el archivo .csproj del proyecto de Azure Service debe modificarse para incluir <Properties>SkipValidatePackageReferences=true</Properties> .

Esto no fue aparente por la respuesta de @TheESJ, por lo que decidí publicar una respuesta por separado. Gracias a @TheESJ.


La respuesta proporcionada por TheESJ es correcta, sin embargo, la redacción no estaba clara para mí. Como no puedo comentar la respuesta, proporcionaré más detalles aquí. Específicamente, estaba teniendo este problema con un proyecto de Azure y se requirió la siguiente solución para hacer que la advertencia desaparezca:

Cuando hace doble clic en la advertencia en VisualStudio, se lo llevará al destino BclBuildValidateNugetPackageReferences en el archivo Microsoft.BclBuild.targets. Sobre el elemento de destino real, debe encontrar un bloque de comentario grande que se refiera a la desactivación de las verificaciones de referencia del proyecto. Como los proyectos de Azure no pueden tener ninguna referencia de biblioteca, es imposible que esos proyectos de Azure cumplan con los requisitos de este objetivo de compilación en particular.

¿La solución? Deshabilite la verificación de referencia del proyecto de Azure ya que es imposible agregar una referencia de paquete nuget.

EJEMPLO

Entonces, supongamos que tenemos dos proyectos: MyAzureProject.ccproj que hace referencia a MyProject.csproj . Sigue estos pasos:

  1. Haga clic derecho en "MyAzureProject" en el Explorador de soluciones y seleccione "Editar archivo de proyecto".
  2. Encuentre la referencia del proyecto a "MyProject". Debería verse algo así como:

    <ProjectReference Include="../MyProject/MyProject.csproj"> <Name>MyProject</Name> <Project>{1d99490e-d140-4897-9890-238e673a5864}</Project> ... </ProjectReference>

  3. Agregue el siguiente elemento dentro del elemento ProjectReference:

    <Properties>SkipValidatePackageReferences=true</Properties>

  4. La referencia de su proyecto ahora debe verse así:

    <ProjectReference Include="../MyProject/MyProject.csproj"> <Name>MyProject</Name> <Project>{1d99490e-d140-4897-9890-238e673a5864}</Project> ... <Properties>SkipValidatePackageReferences=true</Properties> </ProjectReference>

  5. Haga clic derecho en "MyAzureProject" en el Explorador de soluciones y elija "Recargar proyecto".

Ahora debería poder reconstruir y el error debería desaparecer.


Si hace doble clic en la advertencia, le da instrucciones para deshabilitar la advertencia.

Es seguro desactivar las referencias de proyectos de proyectos que aún no son compatibles con Nuget.

Vea la porción siguiente en negrita copiada de Microsoft.Bcl.Build.targets.

BclBuildValidateNugetPackageReferences

Este objetivo se puede deshabilitar para una referencia de proyecto estableciendo SkipValidatePackageReferences = true para la referencia:

<ProjectReference Include="../pcl/pcl.csproj"> <Project>{664a9e98-fac7-4567-a046-0dde95fddb48}</Project> <Name>pcl</Name> <Properties>SkipValidatePackageReferences=true</Properties> </ProjectReference>