Visual Studio dev tools & services make app development easy for any platform & language. Try our Mac & Windows code editor, IDE, or Azure DevOps for free. Sep 23, 2019 Also, be sure to check out the Visual Studio Container Tools Extensions (Preview) for a glimpse of even better tooling coming in Visual Studio 2019 version 16.4 Preview 2.NET Productivity. Since C# 8.0 and.NET Core 3.0 are out today, Visual Studio tooling is updated to make you more productive when using these new tools.
AWS Elastic Beanstalk
Use the AWS Toolkit for Visual Studio to develop, debug, then deploy your .NET web applications using a web application template. Use Visual Studio to build and run your application locally before deploying to AWS Elastic Beanstalk. Learn more »
AWS Lambda and Amazon API Gateway
Create serverless applications with minimal administration and event-driven scaling with C# and Node.js using AWS Lambda and Amazon API Gateway.
Amazon Elastic Container Service
Easily build, register and deploy .NET Core Docker applications to the Amazon Elastic Container Service without ever leaving Visual Studio. Learn More »
AWS Explorer
The AWS Explorer lets you manage your AWS resources. Including your Amazon S3 Objects, Amazon DynamoDB Tables and EC2 instances.
CloudFormation Editor
Create new .NET web applications using an application template. Use Visual Studio to build with the convenience of IntelliSense and deploy to AWS with AWS CloudFormation. Learn more »
Project Templates
The AWS Toolkit for Visual Studio includes project templates for AWS Lambda functions, AWS CloudFormation templates and sample projects showing how to use various AWS services.
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
Note about using .NET Core 3.1.40x SDKs
The .NET 3.1.40x SDKs require version 16.7 of MSBuild.
For MacOS and Linux users who have Mono installed, this means you will need to set omnisharp.useGlobalMono
to never
until a version of Mono ships with MSBuild 16.7.
Visual Studio Code
Note about using .NET 5 SDKs
The .NET 5 SDK requires version 16.8 of MSBuild.
For Windows users who have Visual Studio installed, this means you will need to be on the latest Visual Studio 16.8 Preview.For MacOS and Linux users who have Mono installed, this means you will need to set omnisharp.useGlobalMono
to never
until a version of Mono ships with MSBuild 16.8.
What's new in 1.23.11
- Move the global Mono check to the correct place (#4489, PR: #4492)
What's new in 1.23.10
- Support solution filters (*.slnf) (PR: #4481)
- Prompt user to install Blazor WASM companion extension if needed (PR: #4392)
- Add path to dotnet so child processes can use the CLI (PR: #4459)
- Give more information when Mono is missing or invalid. (#4428, PR: #4431)
- Revert incremental change forwarding (PR: #4477)
- Fixes to asset generation (PR: #4402)
- Add properties to blazorwasm debug configuration. (dotnet/aspnetcore#30977, PR: i#4445)
- Avoid white status bar items to ensure contrast (#4384, PR: #4385)
- Update OmniSharp to 1.37.8
- Update Roslyn version to
3.10.0-1.21125.6
(PR: omnisharp-roslyn#2105) - Update included build tools to closely match NET 6 Preview 1 SDK (PR: omnisharp-roslyn#2103)
- Improve custom error messages for MSB3644 (PR: omnisharp-roslyn#2097)
- Do not call FindReferencesAsync for null symbol (omnisharp-roslyn#2054, PR: omnisharp-roslyn#2089)
- use an OmniSharp specific message for MSB3644 (omnisharp-roslyn#2029, PR: omnisharp-roslyn#2069)
- changed the default RunFixAllRequest timeout to 10 seconds (PR: omnisharp-roslyn#2066)
- Support Solution filter (.slnf) (PR: omnisharp-roslyn#2121)
- updated to IL Spy 7.0.0.6372 (PR: omnisharp-roslyn#2113)
- Add sentinel file to MSBuild to enable workload resolver (#4417, PR: omnisharp-roslyn#2111)
- fixed CS8605 'Unboxing possibly null value' (PR: omnisharp-roslyn#2108)
- Update Roslyn version to
- Updated Razor support (PR: #4470)
- Bug fixes
What's new in 1.23.9
- Add option to organize imports during document formatting. (PR: #4302)
- Update to use zero based indexes (PR: #4300)
- Improve request queues to improve code completion performance (PR: #4310)
- Add setting to control whether to show the OmniSharp log on error (#4102, #4330, PR: #4333)
- Support building launch assets for NET6-NET9 projects (#4346, PR: #4349)
- Add debugger support for Concord extensions. See the ConcordExtensibilitySamples wiki for more information.
- Update OmniSharp version to 1.37.6
- Handle records in syntax highlighting (#2048, PR: #2049)
- Remove formatting on new line (PR: #2053)
- Validate highlighting ranges in semantic highlighting requests (PR: #2055)
- Delay project system init to avoid solution update race (PR: #2057)
- Use 'variable' kind for parameter completion (#2060, PR: #2061)
- Log request when response fails (#2064)
What's new in 1.23.8
- Updated Debugger support (PR: #4281)
- Updated the version of .NET that the debugger uses for running its own C# code to .NET 5
- Updated .NET debugging services loader to address problem with debugging after installing XCode12 (dotnet/runtime/#42311)
- Fixed integrated terminal on non-Windows (#4203)
- Updated Razor support (PR: #4278)
- Bug fixes
- Update OmniSharp version to 1.37.5 (PR: #4299)
- Update Roslyn version to 3.9.0-2.20570.24 (PR: omnisharp-roslyn#2022)
- Editorconfig improvements - do not lose state, trigger re-analysis on change (omnisharp-roslyn#1955, #4165, #4184, PR: omnisharp-roslyn#2028)
- Add documentation comment creation to the FormatAfterKeystrokeService (PR: omnisharp-roslyn#2023)
- Raise default GotoDefinitionRequest timeout from 2s to 10s (#4260, PR: omnisharp-roslyn#2032)
- Workspace create file workaround (PR: omnisharp-roslyn#2019)
- Added
msbuild:UseBundledOnly
option to force the usage of bundled MSBuild (PR: omnisharp-roslyn#2038)
- Support auto doc comment generation (#8, PR: #4261)
- Add schema support for appsettings.json (#4279, PR: #4280)
- Add schema support for global.json (PR: #4290)
- Update remoteProcessPickerScript windows ssh exit (#3482, PR: #4225)
- Do not start OmniSharp server in Live Share scenarios (#3910, PR: #4038)
- Suppress codelens for IEnumerable.GetEnumerator (#4245, PR: #4246)
- Allow arm64 MacOS to debug dotnet projects (#4277, PR: #4288)
Visual Studio Download
Emmet support in Razor files
To enable emmet support, add the following to your settings.json:
Semantic Highlighting
The C# semantic highlighting support is in preview. To enable, set editor.semanticHighlighting.enabled
and csharp.semanticHighlighting.enabled
to true
in your settings. Semantic highlighting is only provided for code files that are part of the active project.
To really see the difference, try the new Visual Studio 2019 Light and Dark themes with semantic colors that closely match Visual Studio 2019.
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?
Visual Studio Free Download
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:
Visual Studio Download
- 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
Copyright © .NET Foundation, and contributors.
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.
Code of Conduct
This project has adopted the code of conduct defined by the Contributor Covenantto clarify expected behavior in our community.For more information see the .NET Foundation Code of Conduct.
Contribution License Agreement
By signing the CLA, the community is free to use your contribution to .NET Foundation projects.
.NET Foundation
This project is supported by the .NET Foundation.
Comments are closed.