2011-04-20 4 views

Répondre

11

De quoi un paquet de nuget est-il composé, hormis les bibliothèques compilées?

Take a look here. Fondamentalement, c'est un fichier avec l'extension .nupkg qui n'est rien de plus qu'un fichier .zip contenant la structure expliquée dans le lien précédent et quelques métadonnées xml.

Est-il possible de télécharger ces paquets sans utiliser le gestionnaire de paquets et de les utiliser ailleurs?

Bien sûr, téléchargez simplement le fichier .nupkg.

+0

Merci pour la réponse, Darin! Cependant, je suis incapable de trouver un lien pour télécharger le fichier .nupkg sur say, http://nuget.org/List/Packages/EntityFramework – virtualmic

+3

@virtualmic, ici: http://packages.nuget.org/v1/Package /Download/EntityFramework/4.1.10331.0 –

+2

@Darin Dimitrov Comment avez-vous réussi à trouver l'URL du paquet? – RationalGeek

1

commentaire supplémentaire: Après avoir téléchargé le * .zip (exemple jquery) change la fin de * .zip en * .nupkg et vous pouvez ensuite les installer avec le gestionnaire de paquets dans VS. Peut-être que c'est juste moi qui devais y penser pendant un moment. Sinon, j'espère que cela aidera.

+0

* nupkg tu veux dire? – Alyce

+0

@Alyce fixe ce –

1

Désolé, cela devrait être un commentaire, mais je n'ai pas assez de rep.

Basé sur le code HTML généré par l'extension Chrome mentionné dans this answer, nous pouvons améliorer gth685f's answer en notant que, pour télécharger les paquets qui ne sont pas la dernière, l'URL est packages.nuget.org/api/v2/package/<PACKAGE_YOU_WANT>/<VERSION_NUMBER> (notez le numéro incrémentée version API aussi).

2

Pour que tout le monde le sache, vous pouvez simplement créer un compte sur nuget.org. Une fois connecté, un lien de téléchargement apparaîtra dans la barre d'outils de gauche qui vous permettra de télécharger directement n'importe quel fichier .nupkg.

-2

Vous pouvez également utiliser le nuget de l'outil de ligne de commande.exe pour télécharger le fichier nupkg, comme ceci:

nuget install packageId

pour obtenir la dernière version, ou pour obtenir la version spécifique

nuget install packageId -Version version

.

+0

Il a dit sans gestionnaire de paquets nuget. – Tillman32

0

La référence à NuGet peut fonctionner (la plupart du temps?) Mais vous pouvez également rencontrer des problèmes de version. Par exemple, essayez d'ajouter le Microsoft HTTP Client Libraries NuGet package à un projet .NET 4 et examinez le fichier csproj résultant.

Tout d'abord, vous remarquerez que certains des assemblées BCL ont été overriden:

  1. System.IO.dll
  2. System.Runtime.dll
  3. System.Threading.Tasks

Et maintenant tous les projets de référencement doivent également utiliser ces remplacements (puisque vous ne pouvez pas référencer plusieurs versions du même assemblage). Cela signifie, entre autres, que vous perdez les mises à jour de ces assemblages (sauf si le paquet BCL NuGet est également mis à jour).

Vous remarquerez également votre csproj contient l'entrée suivante (il ne fonctionnera pas si vous la supprimez):

<Import Project="..\packages\Microsoft.Bcl.Build.1.0.13\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.13\tools\Microsoft.Bcl.Build.targets')" /> 

Je ne suis pas bien informé sur MSBuild, mais je devine que cela pourrait affecter votre construction environnement.

Questions connexes