Version Manager

glennc edited this page May 18, 2016 · 7 revisions

This documentation is now out of date. As of the 1.0.0-rc2 release, ASP.NET Core uses the .NET CLI. For more information on the CLI visit

One of the main goals of this project is to work with teams across Microsoft to provide a side-by-side .NET Framework. However, when you have side-by-side capable frameworks and tools there is a bootstrapping problem of getting and selecting the correct version of the DNX to run.

The version manager helps with this by retrieving versions of the DNX, using NuGet, and allowing you to switch between versions when you have multiple on your machine. It is also added to your path to allow executing commands from anywhere on your machine.


To set up the version manager you should follow the instructions in the Getting Started section of the Readme of this repo.

Installing DNVM will:

  • Copy the dnvm files into %USERPROFILE%\.dnx\bin
  • Add the .dnx\bin directory to your users path

NOTE: setting up DNVM does just that, sets up DNVM. It doesn't install any version of the DNX by default. To install the runtime you use one of the commands below.

You can now view the dnvm help text by running dnvm or dnvm help. The help will show you the various options and tell you what they do.

Using the version manager

Once setup is complete you will have the dnvm command on your path and you can use it to execute all the following commands:

  • dnvm upgrade [-x86][-x64] [-svr50][-svrc50] [-g|-global] [-proxy <ADDRESS>]
    • install latest DNX from feed
    • set 'default' alias to installed version
    • add DNX bin to user PATH environment variable
    • -g|-global install to machine-wide location
    • -f|-force upgrade even if latest is already installed
    • -proxy
      use given address as proxy when accessing remote server
  • dnvm install <semver>|<alias>|<nupkg>|latest [-x86][-x64] [-svr50][-svrc50] [-a|-alias <alias>] [-g|-global] [-f|-force]
    • | install requested DNX from feed
    • install requested DNX from package on local filesystem
    • latest install latest DNX from feed
    • add DNX bin to path of current command line
    • -p|-persistent add DNX bin to PATH environment variables persistently
    • -a|-alias set alias for requested DNX on install
    • -g|-global install to machine-wide location
    • -f|-force install even if specified version is already installed
  • dnvm use <semver>|<alias>|none [-x86][-x64] [-svr50][-svrc50] [-p|-persistent] [-g|-global]
    • | add DNX bin to path of current command line
    • none remove DNX bin from path of current command line
    • -p|-persistent add DNX bin to PATH environment variables persistently
    • -g|-global combined with -p to change machine PATH instead of user PATH
  • dnvm list
    • list DNX versions installed
  • dnvm alias
    • list DNX aliases which have been defined
  • dnvm alias <alias>
    • display value of named alias
  • dnvm alias <alias> <semver> [-x86][-x64] [-svr50][-svrc50]
    • set alias to specific version