visual valida that studio restaurar remoto puede paquete packagesource nugetpackage nombre missing elemento declarado correctamente configuracion computer are .net nuget

.net - that - visual studio la configuracion de nuget no es valida



NuGet para soluciones con mĂșltiples proyectos (6)

Supongamos que tengo una solución con 3 proyectos:

  • Núcleo
  • UI
  • Pruebas

Algunos de los paquetes NuGet que uso se aplicarán a los 3 proyectos. Algunos simplemente se aplicarán a la interfaz de usuario y las pruebas, y algunos solo se aplicarán a las pruebas (como NUnit).

¿Cuál es la forma correcta de configurar esto usando NuGet?

  1. ¿Debo usar "Agregar referencia de paquete de biblioteca" en los tres proyectos cada vez que necesito una referencia?
  2. ¿Debo usar "Agregar referencia de paquete de biblioteca" la primera vez que necesito un paquete, y luego usar Agregar referencia-> Buscar usos posteriores?

En cualquier caso, ¿cuántos archivos packages.config debería tener?


Debe usar la "Agregar referencia de paquete de biblioteca" para toda su biblioteca externa en cada proyecto de su solución. Terminará con un paquete.config por proyecto.

Sin embargo, descargará el paquete solo una vez y lo reutilizará localmente para todos sus otros proyectos.


En Package Manager Console puede escribir el siguiente comando :

Get-Project -all | ForEach-Object {Get-Package -ProjectName $_.Name -filter PACKAGE_NAME} | where-object { $_.id -eq ''PACKAGE_NAME'' } | Install-Package PACKAGE_NAME -Version VERSION

Puede usar ese comando para instalar o actualizar también (Update-Package)


Este dulce acuerdo funciona para mí:

PM> Get-Project -all | where {$_.Name -match "Songhay.Silverlight" -and $_.Name -notmatch "ApplicationLoader" -and $_.Name -notmatch ".Xml"} | ForEach-Object {Install-Package MvvmLight -project $_.Name}


Para cualquiera que tropiece con esto, ahora existe la siguiente opción:

Haga clic con el botón derecho en su solución> Administrar paquetes NuGet para solución ...

... O:

Herramientas> Administrador de paquetes de biblioteca> Administrar paquetes NuGet para solución ...

Y si va al área de paquetes instalados, puede ''administrar'' un solo paquete en cada proyecto de la solución.


Puede usar la consola para orientar varios proyectos

Tools > Library Package Manager > Package Manager Console

luego usa este comando

Get-Project PROJECT-NAMES-WITH-COMMAS | Install-Package PACKAGENAME

por ejemplo

Get-Project Core,UI | Install-Package FluentDateTime


Si desea instalar un paquete en múltiples soluciones, escribí un guión práctico de Powershell para hacerlo, vea here .

Incluso puede filtrar el comando Get-Project -All y dirigirse a un subconjunto de la lista de proyectos.