NuGet quelques Griefs
Franchement Nuget, je ne trouve pas ça si cool que ça. Je trouve qu'ils sont un peu dépassés par leur succès. Quand je pense que les premières pages de pub sur NuGet disaient : "pour sortir enfin de l'enfer des DLLs" ou du GAC "Global Assembly Cache" et bien moi je trouve qu'on y est encore en plein et que NuGet vous oblige à migrer alors que parfois vous ne le souhaitez pas.
J'ai travaillé avec Prism sur les premières versions, j'ai archivé mon projet "using prism", je le ressort quelques années après, la version de Prism n'est plus gérée par le package correspondant au sein de NuGet. Je suis donc "obligé de migrer" c'est à dire de faire des modifications d'un code qui fonctionnait pour qu'il fonctionne à nouveau. Franchement je trouve pas ça cool ! Du moins c'est pas mieux qu'avant.
Comment se passer proprement de NuGet, créer un répertoire Assemblies
Rien de miraculeux mais une façon propre de créer quelque chose de pérenne et sans utiliser NuGet. Je créé un répertoire nommé : Assemblies à la racine de ma solution pour y placer les modules (les packages) que je souhaite sortir de la gestion de NuGet. Par exemple Log4Net.Répertoire Assemblies des DLL en références dans mon projet non gérées par NuGet |
La difficulté c'est de trouvé la DLL Log4Net seule sans NuGet autour. Je la trouve et je la place dans répertoire Assemblies et j'y fais référence dans mon projet et le tour est joué.
log4net est référencée dans mon projet |
Mise en Gestion de Configuration de ma DLL
Comment retrouvé cette DLL log4net dans la gestion de configuration ? Ce qu'on remarque c'est que dans l'Explorateur de contrôle de code source c'est bien entendu vide :
La DLL n'est pas encore dans le contrôle de code source |
Où sont les sources dans le Cloud de Team Services ?
On a vu que Visual Studio Online devenait Team Service mais comment y accéder depuis mon projet ouvert dans VS 2015 Community, moi j'ai trouvé le lien suivant :
Accès à Team Services depuis VS 2015 Community |
Le répertoire Assemblies dans le gestionnaire de code sources est vide aussi :
Pour ajouter la DLL log4net dans le gestionnaire de configuration il faut "Ajouter les fichiers au contrôle de code source" de la façon suivante : Revenir dans Visual Studio dans l'Explorateur de solutions
Il faut encore un clique sur Ok :
Un petit + en vert vient s'ajouter devant le fichier dans l'Explorateur de solution, il faut encore archiver et actualiser pour voir ce fichier dans le gestionnaire de configuration de Team Services "cloud" :
DLL log4net maintenant en gestion de configuration |
Conclusion
Je vous l'avais dit, rien de miraculeux mais on est tranquille, le package Log4Net n'évolue plus (n'est plus en développement) il n'y a donc aucune raison de le suivre en gestion de configuration. Même s'il venait à être supprimer des NuGets Packages notre projet continuerait de fonctionner et c'était l'objectif.
Have fun !