Search code examples
visual-studio-2010projects-and-solutionsasp.net-mvc-3nuget

How (and when) do I use TFS with private DLLs that can also be served by NuGet/NuPack?


We have a couple of private "Enterprise Services" DLLS that are used in all our Websites for authentication, logging, etc. Since they are private, we also control the versioning and source of these DLLs. Our historic (error prone) steps after creating File | New Project include

  1. Add the "Enterprise Services" project
  2. Add a reference to above
  3. Edit web.config sections such as Authentication, HttpHandlers, etc...

NuGet will automate the above process

I just came across NuGet (bundled in MVC3) which allows me to download and install VS2010 packages from a privately hosted server, and automate the config settings that previously would have made manually.

Question:

  • Does it make sense to publish my dll into a private NuGet server?
  • Will I lose the ability to debug and step into this dll if I need to?
  • What other things should I consider if the rest of my project is based in TFS?

Solution

  • I agree with marcind: having a private feed make sense.

    My 2 cents are that you don't need to configure a private server: configuring your VS to target a shared folder is enough for distributing the packages and it will be easy to update with your TFS builds: just create the NuGet package and drop it into the shared folder.

    Keep in mind that, for the latest NuGet bits that I tested, the client (both the console and the gui) does not look into other feeds for locating the dependecies so it will complaint that it can't resolve them automatically: you'll have to install them by hand.