Tim Heuer, Author at Visual Studio Blog https://devblogs.microsoft.com/visualstudio/author/timheuer/ The official source of product insight from the Visual Studio Engineering Team Tue, 06 Jun 2023 20:17:48 +0000 en-US hourly one https://devblogs.microsoft.com/visualstudio/wp-content/uploads/sites/4/2018/10/Microsoft-Favicon.png Tim Heuer, Author at Visual Studio Blog https://devblogs.microsoft.com/visualstudio/author/timheuer/ thirty-two thirty-two Announcing C# Dev Kit for Visual Studio Code https://devblogs.microsoft.com/visualstudio/announcing-csharp-dev-kit-for-visual-studio-code/ https://devblogs.microsoft.com/visualstudio/announcing-csharp-dev-kit-for-visual-studio-code/#comments Tue, 06 Jun 2023 20:17:00 +0000 https://devblogs.microsoft.com/visualstudio/?p=243480 We are thrilled to announce the preview release of C# Dev Kit, a new Visual Studio Code extension that brings an improved editor-first C# development experience to Linux, macOS, and Windows.
The C# Dev Kit is designed to enhance your C# productivity when you’re working in VS Code.

The post Announcing C# Dev Kit for Visual Studio Code appeared first on Visual Studio Blog .

]]>
We are thrilled to announce the preview release of C# Dev Kit , a new Visual Studio Code extension that brings an improved editor-first C# development experience to Linux, macOS, and Windows.

The C# Dev Kit is designed to enhance your C# productivity when you’re working in VS Code. It works together with the C# extension , which has been updated to be powered by a new fully open-source Language Server Protocol (LSP) host, creating a performant, extensible, and flexible tooling environment that easily integrates new experiences into C# for VS Code. The source repo for this extension is in the process of being migrated and will be available later this week.

Try out C# Dev Kit for your C# web and cloud-native projects and share your feedback today!

 Three dimensional rendering of the listing of the C# Dev Kit in the Extension view of Visual Studio Code

What is C# Dev Kit?

C# Dev Kit borrows some familiar concepts from Visual Studio to bring a more productive and reliable C# experience to VS Code. This ensures a great experience whether you are quickly editing a C# file, learning C#, or debugging a backend API. The C# Dev Kit consists of a set of VS Code extensions that work together to provide a rich C# editing experience, AI-powered development, solution management, and integrated testing. As shown in the graphic below, C# Dev Kit consists of:

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

 Diagram showing the composition of the C# Dev Kit to include the C# extension and IntelliCode as separate extensions

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. This addition provides a curated and structured view of your application for effortless, central project management. This lets you quickly add new projects or files via templates to your solutions and easily build all or part of your solution.

 Animation of the new project experience in the C# Dev Kit

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. The extension will discover and surface your tests in the Test Explorer pane just like for your other languages. It can also be run via the command palette.

 Animation of the testing experience with the C# Dev Kit

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. Both extensions integrate with components like Roslyn and Razor to deliver superb performance for tools such as IntelliSense, definition and symbol navigation, syntax highlighting, refactoring, and code formatting.

Previous Time to IntelliSense New Time to IntelliSense Percentage Improvement
38 seconds 3.5 seconds 91%

Benchmarked using a 2GB sized solution with 40 projects and 500,000 lines of source code.

In addition to the performance and reliability gains provided by the updated C# extension, C# Dev Kit lets you enjoy these same performance improvements with the solution, debugging, and testing features.

Write your project faster with AI-powered C# development

Auto-installing as part of C# Dev Kit, the IntelliCode for C# Dev Kit extension enhances the AI-assisted support beyond the basic IntelliSense code-completion found in the existing C# extension. It brings powerful IntelliCode features, such as whole-line completions and starred suggestions, putting what you’re most likely to use at the top of your IntelliSense completion list to your C# projects, all based on your own personal codebase.

 Screenshot showing IntelliCode with IntelliSense listing the starred completions provided by AI

Develop C# apps from anywhere

It’s never been easier to create modern .NET applications while working on your favorite operating system. As a VS Code extension, C# Dev Kit lets you work on C# projects with Linux, macOS, Windows, and even a dev container . You can also enjoy these same capabilities in a cloud-based developer environment like GitHub Codespaces !

Getting started with C# Dev Kit

C# Dev Kit makes it easy for developers of all experience levels to set up a C# environment in VS Code. Install the C# Dev Kit extension and follow the step-by-step VS Code walkthrough to configure your workspace. Today, C# Dev Kit lets you create and work with web apps, console apps, class library projects, and testing projects.

 Screenshot of the Getting Started welcome walkthrough of the C# Dev Kit extension

If you currently use the VS Code C# extension (powered by OmniSharp), installing C# Dev Kit extension will upgrade C# extension to the latest pre-release version compatible with C# Dev Kit. Check out the Getting Started documentation to learn more.

Given C# Dev Kit builds on the same foundations as Visual Studio for some of its functionality, it uses the same license model as Visual Studio. This means it’s free for individuals, as well as academia and open-source development, the same terms that apply to Visual Studio Community. For organizations, the C# Dev Kit is included with Visual Studio Professional and Enterprise subscriptions, as well as GitHub Codespaces . For additional details see the license terms .

Share your feedback on C# Dev Kit!

C# Dev Kit was developed based on feedback we’ve received from VS Code users regarding their C# development process. As we regularly update C# Dev Kit and its features, we encourage you to provide feedback so we can continuously improve and deliver the best possible experience for everyone.

Please share your feedback on any of these upcoming updates, report issues, or propose and feature suggestions through VS Code’s Help > Report Issue . Select whether it is a bug, feature request, or performance issue on “An Extension” and select C# Dev Kit from the list of extensions,

 Screenshot of the Issue Reporter experience in Visual Studio Code

To learn more about how to get the most out of C# Dev Kit, explore our updated C# VS Code documentation and Get Started docs. Try out the new C# environment with C# Dev Kit today!

More about the Visual Studio product family

Visual Studio continues to be our premier C# development tool, supporting the full range of .NET workloads and project types. C# Dev Kit is an exciting step for us to bring .NET development productivity to other parts of the Visual Studio product family. For more information on the latest features added to Visual Studio, check out the Visual Studio 17.6 release announcement .

The post Announcing C# Dev Kit for Visual Studio Code appeared first on Visual Studio Blog .

]]>
https://devblogs.microsoft.com/visualstudio/announcing-csharp-dev-kit-for-visual-studio-code/feed/ fifty-one
Visual Studio 2022 17.2 is now available! https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-2-is-now-available/ https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-2-is-now-available/#comments Tue, 10 May 2022 17:59:17 +0000 https://devblogs.microsoft.com/visualstudio/?p=237853 Today we are pleased to release Visual Studio 2022 17.2 as generally available. We want to acknowledge and thank all developers like you that continue to provide us valuable feedback on your experiences using Visual Studio 2022 for helping shape the product and be a part of our release!

The post Visual Studio 2022 17.2 is now available! appeared first on Visual Studio Blog .

]]>
Today we are pleased to release Visual Studio 2022 17.2 as generally available. We want to acknowledge and thank all developers like you that continue to provide us valuable feedback on your experiences using Visual Studio 2022 for helping shape the product and be a part of our release!

This release brings continued improvements to the C# and .NET experiences, new Git performance and experiences, updates for C++ developers, and new Azure tools for local development and deployment. We also continue to address your direct feedback submitted via Developer Community , addressing over 400 feedback items in this release! You can see the broader list of community feedback addressed in releases by visiting the fixes page on Developer Community.

I want to highlight a few of the new capabilities that are now available in Visual Studio 2022 17.2 released today. We have also released 17.3 Preview 1 – some additional details about that at the end of this post.

We now surface embedded source and Source Link as part of ‘Go to Implementation’ if a referenced assembly has provided this information. This allows you to navigate to the original source files that implements the target symbol. As seen below in this animation it’s as simple as placing your cursor on a symbol and press CTRL + F12 to navigate to the original source file.

 Animation demonstrating using Go To Definition with embedded source and Source Link information

 

 

Raw string literal

In C# 11 we added a new language feature called raw string literals . We now have a refactoring to convert a normal or verbatim string literal to a raw string literal. To use raw string literals, set the language version in your project file to preview (using <LangVersion>preview</LangVersion> ). Place your cursor on a normal or verbatim string, then press CTRL + ‘.’ to trigger the Quick Actions and Refactorings menu and select ‘Convert to raw string.’

 Screenshot of raw string literal code fix

Debugging collections

We recently highlighted this capability in a Visual Studio 17.2 Preview 2, but it bears repeating again. If you regularly debug your .NET code and want to inspect into large and maybe complex collections, we’ve introduced a new visualizer in the debugging experience for IEnumerable object types:

 Animation showing the IEnumerable debug visualizer in action

 

This provides a much easier view into this type of data to rapidly see the information you seek and be able to navigate quickly. For more details into this capability, be sure to check out other examples in our preview blog post from April .

Razor editor

Since 17.1 we’ve been improving the reliability of the new Razor editing experience.  In 17.2 we’ve added support in the editor for:

  • Ability to collapse regions for easy readability and organization
  • The new Razor editor now supports snippet functionality in C# code!
  • We’ve heard you and the ‘wrap div’ shortcut is enabled, use Shift + Alt + W to execute

Web Live Preview for ASP.NET Framework

In the initial release of Visual Studio 2022 we introduced a new capability for those working with Web Forms applications and the designer.  Web Live Preview enables your running app to be the design surface and provides code synchronization across source and web surface to help you navigate directly to the code file for the element you are editing.

 Animation showing Web Live Preview in action with code sync

After continued studies of developers with Web Forms apps, we have improved the experiences even more in this release. We have also worked with several ASP.NET control vendors to ensure their support in this new designer. If you are working in Web Forms, please switch to this feature using Tools > Options > Web Forms Designer options menu and continue to give us feedback!

Azure Development

Azure continues to expand, and Visual Studio is right there for you to enable you to quickly be able to configure, debug, and deploy your services.

In Visual Studio 2022, we’ve expanded our capabilities in Connected Services to allow you to use containers for some Azure services that you might have configured, providing you with a local debug experience. This support has expanded to allow you to configure areas like Redis Cache, MongoDB, RabbitMQ, Storage, SQL, and Cosmos DB all using container images. Configure the dependency and F5 and we’ll launch the containers for you!

 Screenshot of Azure services container configuration

In addition, we have support for the newest Azure container service, Azure Container Apps , within Visual Studio to deploy directly or configure with GitHub Actions. If you are deploying your ASP.NET Core web app or API using containers you can now choose Azure Container Apps as a deployment target in the Publish capabilities:

 Screenshot of Publish configuration to Azure Container Apps

And we will help you either provision or select the right container environment, registry and other deployment options, including generating a GitHub Actions Workflow for deploying using CI/CD:

 Screenshot of GitHub Workflow configuration option

This option will help you remove some of the initial complexities of setting up CI/CD by ensuring your repo has the right secrets for deployment, including helping to generate the right Azure Service Principals and publish profiles. If you are using GitHub repositories, please give this option a try!

C++

C++20 modules support is coming to CMake in Visual Studio! You can try out our experimental support now by ensuring you are supplying the /std:c++20 or /std:c++latest switches to the compiler and using the MSBuild (Visual Studio) generator for CMake rather than Ninja.

Other new features include inline hints, which give you indicators in the editor for the names of function parameters and deduced types. You can toggle this by pressing ctrl twice, or Alt + F1.

 Screenshot of inline hints in C++ code

In Visual Studio 17.1 we introduced peripheral register and RTOS views for embedded developers. We are continuing to improve the capabilities of those views with usability improvements in 17.2:

  • The RTOS tool window is now hidden by default, this prevents showing a tool window with error messages that are not relevant when an RTOS is not being used.
  • When a user double clicks on an RTOS object in the tool window it adds a watch for the object.
  • When a user selects the stack pointer start/end values in the RTOS tool window it is opened in the memory window.
  • Thread awareness has been added for device targets for the call stack window.

Git tooling

We continue to work on enhancing the Git experience in Visual Studio. Line-staging support was introduced in Visual Studio 17.2 Preview and now you can also enable it in 17.2 GA by going to the preview features pane and toggling the “Enable line-staging support” checkbox.

 Screenshot of Git line staging

The following list summarizes the main line-staging items we were able to address during this release:

During this release, we integrated a Git feature called the commit graph which leads to improving the performance of your Git operations and significantly improving performance in Visual Studio. We’ve observed an average of 70% performance improvement in loading branch history in the Git repository window for a repository with 332k commits when enabling the commit graph in Visual Studio.

 Animation of performance improvements comparing old and new in Git tooling

We have also enhanced the detached HEAD experience by providing the option to keep or discard commits when switching to a branch and enhanced the branch checkout experience, a.k.a branch switching by adding in more options and context for when there are un-committed changes.

 Screenshot of detached git commits

Enterprise Support

Version 17.2 is the second long term servicing channel (LTSC) for Visual Studio 2022 .  Servicing channels provide large organizations increased flexibility over when they choose to adopt the new features that are released with minor version updates to the Enterprise, Professional, and Build Tools editions. The 17.2 LTSC release will be supported for 18 months, through January 9, 2024.

Upgrade your development experience today!

On behalf of the Visual Studio entire team, we’re grateful for your continued feedback and ideas you have to help provide you with the absolute best development tools for you. We’ve packed a bunch of updates small and large into Visual Studio 17.2 and encourage you to update your development environment today and experience all these features noted here, but also a bunch of great performance improvements across all the workloads.

What’s next – Visual Studio 2022 17.3

Today we’re also releasing the first preview of the next release, Visual Studio 2022 17.3 Preview 1. This is the main preview build that provides the tooling support for .NET MAUI development using Visual Studio.

 Screenshot of .NET MAUI workload selection in setup

The .NET MAUI team is excited to bring this unified platform experience of development to Visual Studio 2022 and thanks to all of you that have provided feedback as you’ve come along for the .NET MAUI journey with us and endured the initial setup scripts, workload updates, etc. If you are developing for .NET MAUI, Visual Studio 2022 17.3 Preview 1 is the tool that you want to get today as well.

To give the latest preview a try, look at the Visual Studio 2022 Preview channel page for more information. Note that you’ll be able to install it side-by-side with the 17.2 GA release. .NET MAUI isn’t the only improvements we are making in the next version as we continue to add capabilities for .NET and C++ developers in this release. For full details on the 17.3 Preview 1 release, refer to the release notes .

Share your feedback and help us build a better Visual Studio!

As you use Visual Studio, let us know what you love, what you like, and where you’d like us to improve. You can share feedback with us via Developer Community: report any bugs or issues via report a problem and share your suggestions for new features or improvements to existing ones.

As always, we appreciate the time you’ve spent reporting issues and hope you continue to give us feedback on how we’re doing and what we can improve.

The post Visual Studio 2022 17.2 is now available! appeared first on Visual Studio Blog .

]]>
https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-2-is-now-available/feed/ one hundred and thirty-four