C# for Visual Studio Code (powered by OmniSharp)
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
envFileoption 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
- 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.
monoPathoption to use the mono installation at the specified path when the
useGlobalMonois 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
- X64 operating systems:
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 https://github.com/OmniSharp/omnisharp-vscode/issues and file a new one.
The C# extension now supports basic debugging capabilities! See http://aka.ms/vscclrdebugger for details.
- Node.js (8.11.1 or later)
- Npm (5.6.0 or later)
To run and develop do the following:
npm run compile
- Open in Visual Studio 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.