NuGet Packag'n'Publish project template & tooling for VS2010 & VS2012.
This Visual Studio extension (VISX) contains Project templates and a packaging MSBuild targets file to allow easier Package'n'Publish integration with TFS (or other CI) builds.
Give the project sensible name ending in .NuGetPackage - e.g. "MyLibrary.NuGetPackage"
If named like this, then the assembly from the packaging project is removed from the package automatically,
Add references to the assemblies you want to include in your package
By default, if you name your package "MyLibrary.NuGetPackage" (or similar), and reference "MyLibrary" then you're already good to go, AND the packaging project will include your "MyLibrary.dll" automagically, AND it will find and package the source in a symbols package - again automagically.
Any assembly ending in .Silverlight.dll will be put in the lib/SL40 folder within the package.
Any other assembly will be put in the lib/Net40 folder within the package.
Don't forget to add a line to the .tt file for the library for any additional references other than the one to "MyLibrary"
Add dependencies on other NuGet packages
The dependencies will be included automatically in your NuGet package
Set the AssemblyTitle, AssemblyFileVersion and AssemblyDescription inProperties\AssemblyInfo.cs
Build the solution
You now have NuGet (.npkg) and a Symbols (.symbols.nupkg) packages built in your project directory!
How to publish a package using the NuGet.Package'n'Publish extension
Build your solution with the /p:PublishNuGetPackage=true msbuild switch