About a year ago, I
posted an approach for adding basic NuGet support to VS2010. This post provides an updated script for adding this support in VS2012.
There may be times when you wish to use NuGet from the F# Interactive, such as when you are creating F# scripts. Since NuGet focuses on Visual Studio projects, this functionality is not supported out-of-the-box; however, it’s fairly simple to get things up and running.
The first step that we’ll need to do is create an F# script that is able to interact with the official NuGet package source. The script found
here does the trick. I won’t spend too much time explaining the code in this script, but at a high level this allows you to use the F# Interactive window to talk to the NuGet package source, pull down packages, and automatically add a reference to the F# script file that has focus.
The last step to accomplish our goal, is to tell F# Interactive to run our script each time that it launches. This is pretty easy to do thanks to the functionality provided by Visual Studio for adding F# Interactive options. To set the applicable option, go to Tools | Options | F# Tools | F# Interactive. You can then add the following information to the F# Interactive options setting.
--use:C:\temp\fsiext.fsx
The F# Interactive options window looks like the following after making this change:
Once this is in place you can do something like this:
- Create a new F# Library project and build it.
- Open the Script.fsx file.
- Navigate to the F# Interactive window.
- Execute InstallPackage “FSPowerPack.Core.Community”;; in the F# Interactive.
This will cause the package to be pulled down from the official NuGet repository and will automatically add the appropriate references to the Script.fsx file.
Here's what the screen should look like after completing these steps.
Disclaimer: There are a few known issues with this approach.