omnisharp-vscode

Official C# support for Visual Studio Code (powered by OmniSharp)

Github stars Tracking Chart

C# for Visual Studio Code (powered by OmniSharp), Master, Release, :--:, :--:, Master Build Status, Release Build Status, Wallaby.js

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.21.11

  • Updated the bundled to Mono 6.8.0 and MSBuild to be copied from Mono 6.8.0 (omnisharp-roslyn/#1693, PR: omnisharp-roslyn/#1697)
  • Included NugetSDKResolver in the minimal MSBuild, which introduces support for Nuget based project SDKs like Arcade (omnisharp-roslyn/#1678, PR: omnisharp-roslyn/#1696)
  • Added option (csharp.supressBuildAssetsNotification) to surpress missing build asset notifications (PR:#3538)
  • The minimum Mono version required to run OmniSharp on has been increased to 6.4.0

What's new in 1.21.10

  • Updated Razor support (PR:#3524)
    • Added quick info (hover) support for TagHelper and Blazor components. You can now hover over TagHelpers, Components and their attributes to understand what associated C# type you're hovering over in addition to an attributes expected value type.
    • Migrated Razor's project understanding from the VSCode extension into the Language Server. This enables the language server to reboot without extra assistance (reliability) from an LSP client and also enables future Razor LSP clients to have richer functionality with less "work".
    • Added C# light bulbs to enable users to "Fully Qualify" members that are causing errors.
    • Expanded Razor's TextMate grammar colorization support to understand email addresses and await foreach.
    • Several bug fixes
  • Updated Debugger support (PR:#3515)
    • Added option to search the NuGet.org Symbol Server
    • Added options to control logging Process and Thread exits while debugging
  • Fixed a bug where completion items didn't decode symbols corectly (impacted, for example, object initializer completion quality) (#3465, PR:omnisharp-roslyn/#1670)
  • Updated to MsBuild 16.4.0 on Linux/MacOS (PR:omnisharp-roslyn/#1669)
  • Added support for implement type options - it is now possible to define whether code-fix/refactoring generated properties should be auto- or throwing-properties and at which place in the class should newly generated members be inserted. They can be set via OmniSharp configuration, such as omnisharp.json file. (PR: omnisharp-roslyn/#1672)
  • Added support for organizing usings on format. This can be set via OmniSharp configuration, such as omnisharp.json file. (PR:omnisharp-roslyn/#1686)
  • Improved support for .NET Core 3.1

What's new in 1.21.9

What's new in 1.21.8

  • Update Razor to work for 3.1 SDKs (PR:#3406)
  • Support plugins configuration in omnisharp.json (PR:omnisharp-roslyn/#1615)
  • Improved support for .NET Core 3.1

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: Report an issue 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.

Development

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.

License

The Microsoft C# extension is subject to these license terms.
The source code to this extension is available on https://github.com/OmniSharp/omnisharp-vscode and licensed under the MIT license.

Main metrics

Overview
Name With Ownerdotnet/vscode-csharp
Primary LanguageTypeScript
Program languageJavaScript (Language Count: 8)
Platform
License:MIT License
所有者活动
Created At2015-12-03 15:45:21
Pushed At2025-08-16 02:20:19
Last Commit At
Release Count375
Last Release Namev2.89.19 (Posted on )
First Release Namev0.3.6 (Posted on 2016-03-09 20:16:27)
用户参与
Stargazers Count3k
Watchers Count223
Fork Count720
Commits Count7.8k
Has Issues Enabled
Issues Count5332
Issue Open Count651
Pull Requests Count2640
Pull Requests Open Count18
Pull Requests Close Count390
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private