Bars Icon

What’s in Microsoft’s New C# Dev Kit for Visual Studio Code

30-11-2023 12:44 PM

Microsoft announced the preview release of C# Dev Kit, a new extension for Visual Studio Code intended to improve the C# development experience on Linux, macOS, Windows and more.

The extension is itself a collection of extensions including the updated C# extension (22 million-plus installs) that is powered by a new open source Language Server Protocol host to provide faster and more reliable language services, solution management, testing and AI-powered development, Microsoft said.

The VS Code extension actually borrows tooling from the Visual Studio IDE that runs on Windows, and such tooling is baked into Visual Studio Professional and Enterprise subscriptions. Those Visual Studio roots include the IDE’s licensing model, which means the kit is free for individuals, academia and open source development.

Microsoft’s Tim Heuer outlined several potential use cases in a June 6 announcement:

Manage your projects with a new solution view: “Customers often praise the power of project management with C#, so like Visual Studio, C# Dev Kit adds a new Solution Explorer view that works alongside the VS Code existing workspace view.”

Test your projects with expanded Test Explorer capabilities: “With C# Dev Kit, your tests in XUnit, NUnit, MSTest, and bUnit will be discovered and organized for you more easily for fast execution and results navigation.”

Experience improved performance and reliability: “C# Dev Kit is powered by the recently updated open-source C# extension, now powered by a Language Server Protocol (LSP) Host, also open source. The C# extension is built on the incredible foundation started with OmniSharp by the amazing OSS community.”

The kit’s three components include:

  • The C# extension, which provides base language services support and continues to be maintained independent of this effort.
  • C# Dev Kit extension, which builds from the foundations of Visual Studio to provide solution management, templates, and test discovery/debugging.
  • The IntelliCode for C# Dev Kit extension (optional), which brings AI-powered development to the editor.

In response to a reader comment asking why not just use the Visual Studio IDE instead of VS Code and the extension, Heuer indicated the cross-platform capability of VS Code was the main selling point for using the kit instead of the Windows-centric IDE (no Linux support): “This improvement is for those who are choosing to be in VS Code for polyglot reasons, or aren’t on Windows.”

For those devs not on Windows, the kit runs the cross-platform gamut, being compatible also with Linux, macOS, dev containers and GitHub Codespaces.

One reader, however, downplayed the cross-platform angle:

For devs working on Linux this is kind of good news. But I don’t know how many Linux devs use .NET / C#. For Windows users: use VS Community / VS Professional — no need to reimplement its features in VS Code. For Mac: VS for Mac needs some polishing. But for VS Code to catch up it is a long way. Overall, I don’t think that spending all that effort on this extension is a good choice. There are a ton of issues to fix / improvements to make on VS : hot reload, performance, debugging Blazor, … I dont think that enough devs working on Linux will start using .NET / C# due to availability of this extension.

On the flip side, there were also some positive comments among the 46 reader posts, an unusually large number for such an announcement. One read: “I’ve been using it for a couple days now and it’s a great improvement, much faster. Thank you for improving the experience!”

Microsoft, which has published “Getting Started with C# in VS Code” documentation for the kit, is inviting developer feedback on the preview offering.