Official C# support for Visual Studio Code (powered by OmniSharp)
Clone or download
akshita31 Merge pull request #2611 from akshita31/ignore_razo
Ignore the .razor folder in git
Latest commit f05a125 Oct 17, 2018
Failed to load latest commit information.
.travis Add log folding in Travis CI Nov 17, 2017
.vscode UPDATE: launch.json Jun 14, 2018
RuntimeLicenses Mark the C# extension as non-preview (#2220) Apr 27, 2018
images Add C# icon to package Mar 10, 2016
scripts Fix RemoteProcessPicker (#1373) Apr 11, 2017
snippets Update snippets to proper snippet syntax Jun 27, 2017
src Rename Oct 8, 2018
tasks remove unnecessay changes Jul 3, 2018
test add tests Oct 8, 2018
typings Remove the bom for the string and the buffer Sep 19, 2018
.editorconfig Update .editorconfig JSON rules (#2063) Feb 27, 2018
.gitignore Ignore the .razor folder Oct 17, 2018
.travis.yml Update code version Oct 8, 2018 Merge release->master Oct 11, 2018
ISSUE_TEMPLATE Add github issue template Jun 1, 2016
LICENSE.txt license files Dec 3, 2015 Merge release->master Oct 11, 2018
ThirdPartyNotices.txt Remove third-party notice for old grammar Jan 10, 2017
codecov.yml Eliminate Thennable<any> (#2163) Apr 9, 2018 console related suggestions from recent issues Aug 14, 2018 Add ConfigurationProvider API, ${workspaceRoot} -> ${workspaceFolder} ( Nov 3, 2017
gulpfile.ts Using gulp series and parallel May 17, 2018
mocha.opts Verify vsix size before release (#2144) Mar 29, 2018
offline.vscodeignore Add to offline ignore vscode Oct 4, 2018
package-lock.json Merge release->master Oct 11, 2018
package.json Remove beta label Oct 9, 2018
release.vscodeignore INclude Razor grammar files in release packaging Oct 4, 2018 Add Razor verification test plan. Oct 4, 2018
tsconfig.json tsconfig.json: noUnusedLocals, noFallThroughCaseInSwitch, tslint.json… Apr 9, 2018
tslint.json tsconfig.json: noUnusedLocals, noFallThroughCaseInSwitch, tslint.json… Apr 9, 2018
wallaby.js Add mocha+wallaby tests (#2091) Mar 6, 2018

C# for Visual Studio Code (powered by OmniSharp)

Master Release
Master Build Status Release Build Status


Welcome to the C# extension for Visual Studio Code! This extension provides the following features inside VS Code:

  • Lightweight development tools for .NET Core.
  • Great C# editing support, including Syntax Highlighting, IntelliSense, Go to Definition, Find All References, etc.
  • Debugging support for .NET Core (CoreCLR). NOTE: Mono debugging is not supported. Desktop CLR debugging has limited support.
  • Support for project.json and csproj projects on Windows, macOS and Linux.

The C# extension is powered by OmniSharp.

Get Started Writing C# in VS Code

What's New in 1.16.2

  • Update extension to handle upcoming breaking change to launch.json configurations in VS Code 1.28.
  • Fixed launch.json envFile option on Windows
  • Fixed a bug where OmniSharp flame was red inspite of OmniSharp loading the projects without any errors.
  • Fixed a problem with tracking virtual documents from other providers

What's New in 1.16.0

  • Debugger support for launching with environment variables stored in a separate file from launch.json via a new envFile option.
  • Debugger support for hit count breakpoint conditions.
  • Enabled IDE features for .cs files that are not part of a project.
  • Modified the "Unresolved dependencies" prompt to restore the all the projects in the currently selected solution or workspace.
  • Added support to configure the default *.sln file loaded when opening a project with multiple *.sln files in the root.
  • Added verbosity to the test execution output when running test using codelens.
  • Added monoPath option to use the mono installation at the specified path when the useGlobalMono is set to "always" or "auto".
  • Many other bug fixes!

See our change log for more detail.

Supported Operating Systems for Debugging

  • Currently, the C# debugger officially supports the following operating systems:

    • X64 operating systems:
      • Windows 7 SP1 and newer
      • macOS 10.12 (Sierra) and newer
      • Linux: see .NET Core documentation for the list of supported distributions. Note that other Linux distributions will likely work as well as long as they include glibc and OpenSSL.
    • ARM operating systems:
      • Linux is supported as a remote debugging target

Found a Bug?

To file a new issue to include all the related config information directly from vscode by entering the command pallette with Ctrl+Shift+P (Cmd+Shift+P on macOS) and running CSharp: Start authoring a new issue on GitHub command. This will open a browser window with all the necessary information related to the installed extensions, dotnet version, mono version, etc. Enter all the remaining information and hit submit. More information can be found on the wiki.

Alternatively you could visit and file a new one.


The C# extension now supports basic debugging capabilities! See for details.


First install:

  • Node.js (8.11.1 or later)
  • Npm (5.6.0 or later)

To run and develop do the following:

  • Run npm i
  • Run npm run compile
  • Open in Visual Studio Code (code .)
  • Optional: run npm run watch, make code changes
  • Press F5 to debug

To test do the following: npm run test or F5 in VS Code with the "Launch Tests" debug configuration.


The Microsoft C# extension is subject to these license terms. The source code to this extension is available on and licensed under the MIT license.