[#VS2012] NuGet in C++ (in the top ten list for the 2013 )


image

Buenas,

you say that life does not give returns as the succession of Fibonacci , is never skipped a red light and then he fled police in a chase of cinema.

I for example, a few years after leaving, I am returning to C++ in one way rather than aggressive. (Aggressive: is the only way to create well made applications for platforms like ) Arduino .)

However, when the output of your application is a program of only 8K in size, you got that take into account many things to do things well. And at that moment it enters game having good tools. In the case of arduino, the editor of C++ that is shipped is a shit a little poor capabilities. The good news is that wanting it is possible to use Visual Studio 2012 to pull lines in C++.

And when I see the IDE and what is possible and impossible in the world of C++, I find that…

In C++ do have support for NuGet !!!

That Yes, only with version 2.5 or higher, it is possible to update the version from here .

And clear, in a world where each sensor has its own library (or. h), where each scenario is similar to the previous one; NuGet required.

Source: http://blogs.msdn.com/b/vcblog/archive/2013/04/26/nuget-for-c.aspx

Download: NuGet Package Manager, http://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c

 

Saludos @ Home

El Bruno

image image image

[#VS2012] NuGet en C++ (de lo mejorcito del 2013 che)


image

Buenas,

el que diga que la vida no da vueltas como la sucesión de Fibonacci, es que nunca se ha saltado un semáforo en rojo y luego ha huido de la policía en una persecución de cine.

Yo por ejemplo, unos años después de haberlo dejado, me veo volviendo a C++ de una forma más que agresiva. (Agresiva: es la única forma de crear aplicaciones bien hechas para plataformas como Arduino.)

Ahora bien, cuando el output de tu aplicación es un programa de solo 8K de tamaño, tenes que tener en cuenta muchas cosas para hacer bien las cosas. Y en ese momento entra en juego el contar con buenas herramientas. En el caso de arduino, el editor de C++ que viene de fábrica es una mierda un poco pobre de capacidades. Lo bueno es que con ganas es posible utilizar Visual Studio 2012 para tirar líneas en C++.

Y, cuando me pongo a ver el IDE y lo que es posible e imposible en el mundo de C++, me encuentro con que …

En C++ tenemos soporte para NuGet !!!

Eso sí, solo con la versión 2.5 o superior, es posible actualizar la versión desde aquí.

Y claro, en un mundo donde cada sensor posee su propia biblioteca (o .h), donde cada escenario es similar al anterior; NuGet es imprescindible.

Fuente: http://blogs.msdn.com/b/vcblog/archive/2013/04/26/nuget-for-c.aspx

Download: NuGet Package Manager, http://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c

Saludos @ Home

El Bruno

image image image

[#NUGET] Create your own NuGet server with #MyGet


image

Buenas,

NuGet cool, so simple. However what attracts me least are those occasions in which I have to build my own server of NuGet to store my packages.

During January I learned of the existence of MyGet which is a free hosting package service NuGet .Now a little more viewing capabilities of MyGet I see that it can also be integrated to compile packages from Git and CodePlex, with which facilitates a lot creation, publication and versioning them.

There is a very complete features to see here list http://www.myget.org/Home/Features ; the best thing is that we have a FREE version that I think it serves in most of the scenarios that I have raised. Comparative table between these versions can be seen in http://www.myget.org/plans .

To see if I am preparing a tutorial in this regard Guiño

Saludos @ Home

El Bruno

image image image

[#NUGET] Monta tu propio server de NuGet con #MyGet


image

Buenas,

NuGet mola, así de simple. Sin embargo lo que menos me atrae son aquellas ocasiones en las que tengo que montar mi propio servidor de NuGet para almacenar mis paquetes.

Durante enero me enteré de la existencia de MyGet, que es un servicio gratuito de hosting de paquetes NuGet. Ahora viendo un poco más las capacidades de MyGet veo que además puede integrarse para compilar paquetes desde Git y CodePlex, con lo que se facilita muchísimo la creación, publicacion y versionado de los mismos.

Hay un listado completísimo de features para ver aquí http://www.myget.org/Home/Features; lo mejor es que tenemos una versión FREE que creo que sirve en la mayoría de los escenarios que se me han planteado. La tabla comparativa entre estas versiones se puede ver en http://www.myget.org/plans.

A ver si me preparo un tutorial al respecto Guiño

Saludos @ La Finca

El Bruno

image image image

[# NUGET] Teaching some NuGet to Valentino (he is only 4 years old!)


NuGet

Buenas,

this post is that I learn once and for all what is the Karma . Yesterday I I’m complaining a littleabout NuGet and today I already have explain what NuGet. As well, introductions to NuGet can be read here and hereIf you’re a webcast you can see this video. and Yes what happy life is read electronic books of paper, you can buy this Book: Pro NuGet .

If you still want the explanation of Bruno, the first thing that you have to understand is thatNuGet is not a Nugget, i.e. it is not this:

image

Well, if you’ve worked in Visual Studio you know that the subject of references in .net projects may be a little tricky. Personally I think that the thing until Visual Studio 2005 was very controladita; 99% of the items with which we were working were Ms, so there were no problems in searching for and adding items; But today with many elements that grow around VS at a very fast pace, since the subject of the references can be complicated.

Let’s look at an example; you if today you have to add the Entity Framework 5 references to your project, do know what?, and if you also want to work with a TT that allows you to create classes you little, do the references Add?. And if on top of all this, do you want to add a client for ASP.Net MVC WebAPI?, and deserialize JSON packages?

As well, NuGet is a repository of packages where for each product / scenario which they commented before, has a record of the required references. The repository (actually called Gallery) is in http://nuget.org, and is the site where you can download and install the packages you need.

Note: you can even create your own packages as explained here .

Let’s look at an example. Suppose I have a clean console application project. After the project is created it has only the Program.cs class and references are added by default.

image

If I need from this console application invoking JSON services created in an ASP.Net MVC WebAPI project, because the truth is o well I learn all assemblies that I need or am looking for something in the repository of NuGet . Deploying the shortcut menu from the folder references, select the option “Manage NuGet Packages”

image

In the form of packages of NuGet , select the option “OnLine” and look for “Microsoft.AspNet.WebApi.Client”. I can see that the first option are assemblies that I need.

image

As well, now to give the “Install” and see that it has happened in our project.

image

On the one hand, I see that you have added a couple of new references:

  • Newtonsoft.JSON
  • System.NET.http
  • System.NET.http.formatting
  • System.NET.http.WebRequest

and also added me the file “packages.config“. When you open the same content we can see that you have the following:

   1: <?xml version="1.0" encoding="utf-8"?>
   2: <packages>
   3:   <package id="Microsoft.AspNet.WebApi.Client" version="4.0.20710.0" 
   4:            targetFramework="net40" />
   5:   <package id="Microsoft.Net.Http" version="2.0.20710.0" 
   6:            targetFramework="net40" />
   7:   <package id="Newtonsoft.Json" version="4.5.8" 
   8:            targetFramework="net40" />
   9: </packages>

This file is determines which packets that our project is “installed” and then from the same references that you have downloaded and added to our project.

Speaking of references, some which have existential questions ask from where sorcho is taking these dlls?. Look, this is what we have in the project file:

   1: <ItemGroup>
   2:   <Reference Include="Newtonsoft.Json">
   3:     <HintPath>..\packages\Newtonsoft.Json.4.5.8\lib\net40\Newtonsoft.Json.dll</HintPath>
   4:   </Reference>
   5:   <Reference Include="System" />
   6:   <Reference Include="System.Core" />
   7:   <Reference Include="System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
   8:     <HintPath>..\packages\Microsoft.Net.Http.2.0.20710.0\lib\net40\System.Net.Http.dll</HintPath>
   9:   </Reference>
  10:   <Reference Include="System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  11:     <HintPath>..\packages\Microsoft.AspNet.WebApi.Client.4.0.20710.0\lib\net40\System.Net.Http.Formatting.dll</HintPath>
  12:   </Reference>
  13:   <Reference Include="System.Net.Http.WebRequest, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
  14:     <HintPath>..\packages\Microsoft.Net.Http.2.0.20710.0\lib\net40\System.Net.Http.WebRequest.dll</HintPath>
  15:   </Reference>
  16:   <Reference Include="System.Xml.Linq" />
  17:   <Reference Include="System.Data.DataSetExtensions" />
  18:   <Reference Include="Microsoft.CSharp" />
  19:   <Reference Include="System.Data" />
  20:   <Reference Include="System.Xml" />
  21: </ItemGroup>

Seems that the NuGet this has created a folder packages, a level above our project and it has downloaded all the necessary dlls. File Explorer gives us the reason.

image

Well, here already one there will be elucidated the advantages of NuGet . The main, well that with only 2 clicks have everything you need to work. There are other more complex and simple packages. There are other scenarios where for example, you need to make sure that all assemblies of a solution have the same reference to an Assembly. In this case NuGet is a fantastic help.

You can also choose to upload the Packages folder to the source code repository, and you ahorrarías some problems if the server is down for NuGet . You can create your own server package, if you work in a closed environment where your build server not accessible tohttp://nuget.org, etc etc etc.

There are many scenarios, and NuGet is one of the tools that deserve a round of applause as a closed solution to save us hours of organization and cleaning projects references Risa

Saludos @ Home

El Bruno

image image image

[#NUGET] Explicando NuGet al Valentino (que solo tiene 4 añazos!!!)


NuGet

Buenas,

este post es para que aprenda de una vez por todas lo que es el Karma. Ayer me quejo un poco sobre NuGet y hoy ya me toca explicar qué es NuGet. Pues bien, introducciones a NuGet se pueden leer aquí y aquí; si sos de WebCasts podes ver este video. y si lo que te alegra la vida es leer libros electrónicos de papel, te podes comprar este libro: Pro NuGet.

Si todavía queres la explicación del Bruno, lo primero que tenes que entender es que NuGet no es Nugget, es decir no es esto:

image

Ahora bien, si has trabajado en Visual Studio sabrás que el tema de las referencias en proyectos .Net puede llegar a ser un poco delicado. Personalmente pienso que hasta Visual Studio 2005 la cosa estaba muy controladita; el 99% de los elementos con los que trabajábamos eran de MS, con lo que no había problemas en buscar y agregar elementos; pero hoy con tantos elementos que crecen alrededor de VS a un ritmo muy rápido, pues el tema de las referencias puede complicarse.

Veamos un ejemplo; si hoy tienes que agregar las referencias de Entity Framework 5 a tu proyecto, ¿sabrías cuales son?, y si además quieres trabajar con un TT que te permita crear clases POCO, ¿qué referencias agregarías?. Y si encima de todo esto, ¿quieres agregar un cliente para ASP.Net MVC WebAPI?, ¿y deserializar paquetes JSON?

Pues bien, NuGet es un repositorio de paquetes donde para cada producto / escenario de los que comenté antes, se tiene un registro de las referencias necesarias. El repositorio (en realidad se llama galería) está en http://nuget.org, y es el sitio desde donde te puedes descargar e instalar los paquetes que necesites.

Nota: inclusive puedes crear tus propios paquetes como se comenta aquí.

Veamos un ejemplo. Supongamos que tengo un proyecto de aplicación de consola limpia. Una vez creado el proyecto posee solo la clase Program.cs y las referencias por defecto que se agregan.

image

Si desde esta aplicación de consola yo necesito invocar a servicios JSON creados en un proyecto ASP.Net MVC WebAPI, pues la verdad es que o bien me aprendo todos los ensamblados que necesito o busco algo en el repositorio de NuGet. Desplegando el menú contextual desde la carpeta referencias, selecciono la opción “Manage NuGet Packages”

image

En el formulario de paquetes de NuGet, selecciono la opción “OnLine” y busco por “Microsoft.AspNet.WebApi.Client”. Puedo ver que la primera opción son los ensamblados que necesito.

image

Pues bien, ahora a darle al “Install” y veamos que ha pasado en nuestro proyecto.

image

Por un lado veo que ha agregado un par de referencias nuevas:

  • Newtonsoft.Json
  • System.Net.Http
  • System.Net.Http.Formatting
  • System.Net.Http.WebRequest

y además me ha agregado el archivo “packages.config”. Cuando abrimos el contenido del mismo podemos ver que tiene lo siguiente:

   1: <?xml version="1.0" encoding="utf-8"?>

   2: <packages>

   3:   <package id="Microsoft.AspNet.WebApi.Client" version="4.0.20710.0" 

   4:            targetFramework="net40" />

   5:   <package id="Microsoft.Net.Http" version="2.0.20710.0" 

   6:            targetFramework="net40" />

   7:   <package id="Newtonsoft.Json" version="4.5.8" 

   8:            targetFramework="net40" />

   9: </packages>

Este archivo es el que determina los paquetes que tiene “instalado” nuestro proyecto y luego a partir del mismo, las referencias que se ha descargado y agregado a nuestro proyecto.

Hablando de referencias, alguno que tenga dudas existenciales se preguntará ¿de dónde sorcho está sacando estas dlls?. Pues mira, esto es lo que tenemos en el archivo de proyecto:

   1: <ItemGroup>

   2:   <Reference Include="Newtonsoft.Json">

   3:     <HintPath>..\packages\Newtonsoft.Json.4.5.8\lib\net40\Newtonsoft.Json.dll</HintPath>

   4:   </Reference>

   5:   <Reference Include="System" />

   6:   <Reference Include="System.Core" />

   7:   <Reference Include="System.Net.Http, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">

   8:     <HintPath>..\packages\Microsoft.Net.Http.2.0.20710.0\lib\net40\System.Net.Http.dll</HintPath>

   9:   </Reference>

  10:   <Reference Include="System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">

  11:     <HintPath>..\packages\Microsoft.AspNet.WebApi.Client.4.0.20710.0\lib\net40\System.Net.Http.Formatting.dll</HintPath>

  12:   </Reference>

  13:   <Reference Include="System.Net.Http.WebRequest, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">

  14:     <HintPath>..\packages\Microsoft.Net.Http.2.0.20710.0\lib\net40\System.Net.Http.WebRequest.dll</HintPath>

  15:   </Reference>

  16:   <Reference Include="System.Xml.Linq" />

  17:   <Reference Include="System.Data.DataSetExtensions" />

  18:   <Reference Include="Microsoft.CSharp" />

  19:   <Reference Include="System.Data" />

  20:   <Reference Include="System.Xml" />

  21: </ItemGroup>

Parece que el NuGet este ha creado una carpeta packages, un nivel por encima de nuestro proyecto y en el mismo ha descargado todas las dlls necesarias. El File Explorer nos da la razón.

image

Bueno, hasta aquí ya alguno habrá dilucidado las ventajas de NuGet. La principal, pues que con solo 2 clicks tengo todo lo necesario para trabajar. Hay paquetes simples y otros más complejos. Hay otros escenarios donde por ejemplo, necesitas asegurarte que todos los ensamblados de una solución posean LA MISMA REFERENCIA a un ensamblado. En este caso NuGet es una ayuda fantástica.

También puedes optar por subir la carpeta Packages al repositorio de código fuente, y te ahorrarías algunos problemas si está caído el server de NuGet. Puedes crear tu propio servidor de paquetes, si trabajas en un entorno cerrado donde tu servidor de compilación no puede acceder a http://nuget.org, etc etc etc.

Hay muchos escenarios,y NuGet es una de las herramientas que se merecen un aplauso como solución cerrada para ahorrarnos horas de organización y limpieza de referencias en proyectos  Risa

 

Saludos @ Home

El Bruno

image image image

 

[#NUGET] Performance problems, of course :S


image

Buenas,

NuGet works for the ass, so simple. Care me not misunderstood, the idea behind NuGet is awesome, and although still a long way to have something similar to MAVEN the world. Net, to manage packages with NuGet is awesome.

The problem is that during all August NuGet works for the ass. Searches and downloads are slow, often have timeouts, and not to mention the Build Servers where builds fails for this reason and of course, throws us the quality away. Today suffered it with Roberto and Edgar to this problem and the truth is that one is tempted to grab a chainsaw and spending a few years in prison…

A couple of weeks/months ago I published a post where explained storing the packages of NuGet in the source code repository Some people like Unai and asked me why. Well, August is the answer… and I think I will configure this same for 2012 Visual Studio and TFS Preview.

The best for the end, according to this post , the performance issue is on track to be solved.. .and it seems that behind it all some problems of tune of BD. Already sent them to @ PabloDoval so give them a hand and leave fine fine…

Source: http://blogs.msdn.com/b/webdev/archive/2012/08/22/nuget-Gallery-performance-issues.aspx

Saludos @ Home

El Bruno

image image image

[#NUGET] Problemas de rendimiento, pues SI :S


image

Buenas,

NuGet funciona para el culo, así de simple. Cuidado no me malentiendan, la idea detrás de NuGet es awesome, y si bien falta mucho para poder contar con algo similar a MAVEN en el mundo .Net, poder gestionar paquetes con NuGet es awesome.

El problema está en que durante todo Agosto, NuGet funciona para el culo. Las búsquedas y descargas tardan mucho, muchas veces tenemos timeouts, y ni hablar de los Build Servers donde fallan las compilaciones por este motivo y claro, nos tira la calidad a la basura. Hoy mismo lo sufríamos con Roberto y Edgar a este problema y la verdad es que uno se tienta a agarrar una motosierra y pasar unos años en prisión …

Hace un par de semanas/meses publiqué un post donde explicaba como guardar los packages de NuGet en el repositorio de código fuente y algunas personas como Unai me preguntaban porqué. Pues bien, Agosto es la respuesta … y creo que configuraré esto mismo para Visual Studio 2012 y TFS Preview.

Lo mejor para el final, según este post, el problema de rendimiento está en camino de ser solucionado …y parece que detrás de todo algunos problemas de tuneo de BD. Ya les enviaba a @PabloDoval para que les dé una mano y lo deje fino fino …

Fuente: http://blogs.msdn.com/b/webdev/archive/2012/08/22/nuget-gallery-performance-issues.aspx

Saludos @ Home

El Bruno

image image image

[#TFS] HowTo: NuGet and TFS


image

Buenas,

Today the friend Juan has written a post where he presents a little to NuGet. As it leaves the ball in the air and also provides a little to one conversation we had with @ EduDelPozo, today plays a little talk about how to work with NuGet and Team Foundation Server.

First things first, in my case assume a directory structure where we separate on the one hand the source code in the SRC folder and then shared libraries in the LIB folder.

image

In the picture above we can see in this project there are 2 class libraries. To further complicate the scenario we are going to add a couple of references of Enterprise Library from NuGet. In this case logging from http://nuget.org/packages/EnterpriseLibrary.Logging.

Once installed we have our dlls added as a reference and the package.config file has been added in the project.

   1: Each package is licensed to you by its owner. Microsoft is not responsible for, 
   2: nor does it grant any licenses to, third-party packages. Some packages may 
   3: include dependencies which are governed by additional licenses. Follow the 
   4: package source (feed) URL to determine any dependencies.
   5:  
   6: Package Manager Console Host Version 1.8.30524.9000
   7:  
   8: Type 'get-help NuGet' to see all available NuGet commands.
   9:  
  10: PM>; Install-Package EnterpriseLibrary.Logging
  11: Attempting to resolve dependency 'EnterpriseLibrary.Common (≥ 5.0)'.
  12: Attempting to resolve dependency 'Unity.Interception (≥ 2.1)'.
  13: Attempting to resolve dependency 'Unity (≥ 2.1)'.
  14: Attempting to resolve dependency 'CommonServiceLocator (≥ 1.0)'.
  15: Successfully installed 'CommonServiceLocator 1.0'.
  16: You are downloading Unity from Microsoft patterns &; practices, the license 
  17: agreement to which is available at http://www.opensource.org/licenses/ms-pl. 
  18: Check the package for additional dependencies, which may come with their own 
  19: license agreement(s). Your use of the package and dependencies constitutes 
  20: your acceptance of their license agreements. If you do not accept the 
  21: license agreement(s), then delete the relevant components from your device.

Now, in our case we had defined the external references should go to the LIB folder. As NuGet is intelligent, but not so much, we have to tell you that you need to change the behavior by default. It consists in letting the assembled in a packages folder, for example

[…\NuGet\src\ClassLibrary2\packages\EnterpriseLibrary.Common.5.0.505.0\lib\NET35\Microsoft.Practices.EnterpriseLibrary.Common.dll]

Well, to change this functionality we selected the solution, deploy the contextual menu and select the [Enable NuGet Package Restore] option

image

This action add us a new solution folder called .nuget and within the same executable NuGet and an MSBuild file with different targets for the download of packages added.

image

If we are going to the directory we will see that it also creates a file called NuGet.Config. But for our example it will not this configuration file which defines the directory to download the packages. What we do will be the following:

1 Add a file called nuget.config in the directory of the solution

2 Within the same defined the path to download the packages with the following code

do do <? xml version = "1.0" encoding = "utf-8"? >

< settings >

< repositoryPath >…\..\..\Lib < /repositoryPath >

< /settings >

3 Donate!

If we see the lib folder, we will see that we have packages with which we are working within the same

image

Ahh and thanks to the @ Edudelpozo that I gave a hand with this last part Risa

Saludos @ Home

El Bruno

image image image

[#TFS] HowTo: NuGet y TFS


image

Buenas,

hoy el amigo Juan ha escrito un post donde nos presenta un poco a NuGet. Como deja la pelota en el aire y además se presta un poco a una charla que tuvimos con @EduDelPozo, hoy toca hablar un poco sobre como trabajar con NuGet y Team Foundation Server.

Primero lo primero, en mi caso partimos de una estructura de directorios donde separamos por un lado el código fuente en la carpeta SRC y luego las bibliotecas compartidas en la carpeta LIB.

image

En la imagen anterior podemos ver en este proyecto hay 2 bibliotecas de clases. Para complicar un poco más el escenario vamos a agregar un par de referencias de Enterprise Library desde NuGet. En este caso logging desde http://nuget.org/packages/EnterpriseLibrary.Logging.

Una vez instalado ya tenemos nuestras dlls agregadas como referencia y en el proyecto se ha agregado el archivo package.config.

   1: Each package is licensed to you by its owner. Microsoft is not responsible for, 

   2: nor does it grant any licenses to, third-party packages. Some packages may 

   3: include dependencies which are governed by additional licenses. Follow the 

   4: package source (feed) URL to determine any dependencies.

   5:  

   6: Package Manager Console Host Version 1.8.30524.9000

   7:  

   8: Type 'get-help NuGet' to see all available NuGet commands.

   9:  

  10: PM>; Install-Package EnterpriseLibrary.Logging

  11: Attempting to resolve dependency 'EnterpriseLibrary.Common (≥ 5.0)'.

  12: Attempting to resolve dependency 'Unity.Interception (≥ 2.1)'.

  13: Attempting to resolve dependency 'Unity (≥ 2.1)'.

  14: Attempting to resolve dependency 'CommonServiceLocator (≥ 1.0)'.

  15: Successfully installed 'CommonServiceLocator 1.0'.

  16: You are downloading Unity from Microsoft patterns &; practices, the license 

  17: agreement to which is available at http://www.opensource.org/licenses/ms-pl. 

  18: Check the package for additional dependencies, which may come with their own 

  19: license agreement(s). Your use of the package and dependencies constitutes 

  20: your acceptance of their license agreements. If you do not accept the 

  21: license agreement(s), then delete the relevant components from your device.

Ahora bien, en nuestro caso habíamos definido que las referencias externas debían ir a la carpeta LIB. Como NuGet es inteligente pero no tanto, tenemos que indicarle que tiene que cambiar el comportamiento por defecto. Que consiste en dejar los ensamblados en una carpeta packages, por ejemplo

[…\NuGet\src\ClassLibrary2\packages\EnterpriseLibrary.Common.5.0.505.0\lib\NET35\Microsoft.Practices.EnterpriseLibrary.Common.dll]

Pues bien, para cambiar esta funcionalidad seleccionamos la solución, desplegamos el menú contextual y seleccionamos la opción [Enable NuGet Package Restore]

image

Esta acción nos agrega un nuevo solution folder llamado .nuget y dentro del mismo agrega el ejecutable de NuGet y un archivo de MSBuild con diferentes targets para la descarga de los paquetes.

image

Si vamos al directorio veremos que también se crea un archivo llamado NuGet.Config. Pero para nuestro ejemplo no será este archivo de configuración el que defina el directorio de descarga de los paquetes. Lo que haremos será lo siguiente:

1. Agregar un archivo llamado nuget.config en el directorio de la solución

2. Dentro del mismo definir el path de descarga de los paquetes con el siguiente código

<?xml version="1.0" encoding="utf-8"?>

<settings>

  <repositoryPath>..\..\..\Lib</repositoryPath>

</settings>

3. Done !!!

Si vemos la carpeta lib, veremos que dentro de la misma tenemos los paquetes con los que estamos trabajando

image

Ahh y gracias al @Edudelpozo que me dió una mano con esta última parte Risa.

Si subimos los paquetes a la carpeta lib de nuestro TFS ya tendremos todo listo para trabajar on the fly !!!

 

Saludos @ Home

El Bruno

image image image