What's new in Visual Studio 2019
Updated for the 16.7 release
Visual Studio is constantly changing to meet the demands of developers. In the following video from the Microsoft Build library, join us for a tour of some of the newest features and a sneak peek at what's to come:
Video length: 44.58 minutes
With Visual Studio 2019, you'll get best-in-class tools and services for any developer, any app, and any platform. Whether you're using Visual Studio for the first time or you've been using it for years, there's a lot to like in our latest version!
Here's a high-level recap of what's new, all-up:
- Develop: Stay focused and productive with improved performance, instant code cleanup, and better search results.
- Collaborate: Enjoy natural collaboration through a Git-first workflow, real-time editing and debugging, and code reviews right in Visual Studio.
- Debug: Highlight and navigate to specific values, optimize memory use, and take automatic snapshots of your application's execution.
For a complete list of everything that's new in this version, see the release notes.
View the following video to learn more about how you can save time with new features.
Video length: 3.00 minutes
Formerly known as Quick Launch, our new search experience is faster and more effective. Now, search results appear dynamically as you type. And, search results can often include keyboard shortcuts for commands, so that you can more easily memorize them for future use.
The new fuzzy search logic will find anything you need, regardless of typos. So, whether you're looking for commands, settings, documentation, or other useful things, the new search feature makes it easier to find what you're looking for.
There are lots of new and highly useful refactorings in C# that make it easier to organize your code. They show up as suggestions in the light bulb and include actions such as moving members to interface or base class, adjusting namespaces to match folder structure, convert foreach-loops to Linq queries, and more.
Simply invoke the refactorings by pressing Ctrl+. and selecting the action you want to take.
Visual Studio IntelliCode enhances your software development efforts by using artificial intelligence (AI). IntelliCode trains across 2,000 open-source projects on GitHub—each with over 100 stars—to generate its recommendations.
Here are a few ways that Visual Studio IntelliCode can help enhance your productivity:
- Deliver context-aware code completions
- Guide developers to adhere to the patterns and styles of their team
- Find difficult-to-catch code issues
- Focus code reviews by drawing attention to areas that really matter
And if you're using C#, we've also added the ability to train a custom model on your own code.
For more information about IntelliCode, see the Announcing the general availability of IntelliCode plus a sneak peek and Code more, scroll less with Visual Studio IntelliCode blog posts.
Paired with a new document health indicator is a new code cleanup command. You can use this new command to identify and then fix both warnings and suggestions with a single action (or click of a button).
You can also save collections of fixers as a profile. For example, if you have a small set of targeted fixers that you apply frequently while you code, and then you have another comprehensive set of fixers to apply before a code review, you can configure profiles to address these different tasks.
Per-monitor aware (PMA) rendering
If you use monitors that are configured with different display scale factors, or connect remotely to a machine with display scale factors that are different from your main device, you might notice that Visual Studio looks blurry or renders at the wrong scale.
With the release of Visual Studio 2019, we're making Visual Studio a per-monitor aware (PMA) application. Now, Visual Studio renders correctly regardless of the display scale factors you use.
For more information, see the Better multi-monitor experience with Visual Studio 2019 blog post.
New in 16.2: We've updated Test Explorer to provide better handling of large test sets, easier filtering, more discoverable commands, tabbed playlist views, and customizable columns that let you fine-tune what test information is displayed.
New in 16.3: We've included support for .NET Core 3.0. Cross-platform, open source—and fully supported by Microsoft.
For more information, see the Announcing .NET Core 3.0 blog post.
View the following video to learn more about how you can team up to solve issues.
Video length: 4.22 minutes
Something you'll notice when you open Visual Studio 2019 is its new start window.
The start window presents you with several options to get you to code quickly. We've placed the option to clone or check out code from a repo, first.
The start window also includes options to open a project or solution, open a local folder, or create a new project.
For more information, see the Get to code: How we designed the new Visual Studio start window blog post.
Visual Studio Live Share is a developer service that allows you to share a codebase and its context with a teammate and get instant bidirectional collaboration directly from within Visual Studio. With Live Share, a teammate can read, navigate, edit, and debug a project that you've shared with them, and do so seamlessly and securely.
And with Visual Studio 2019, this service is installed by default.
For more information, see the Visual Studio Live Share for real-time code reviews and interactive education blog post and the Live Share now included with Visual Studio 2019 blog post.
Integrated code reviews
We're introducing a new extension that you can download to use with Visual Studio 2019. With this new extension, you can review, run, and even debug pull requests from your team without leaving Visual Studio. We support code in both GitHub and Azure DevOps repositories.
For more information, see the Code reviews using the Visual Studio Pull Requests extension blog post.
View the following video to learn more about how you can zero in with precise targeting while you debug.
Video length: 3.54 minutes
We've taken the once-exclusive C++ data breakpoints and adapted them for .NET Core applications.
So whether you're coding in C++ or .NET Core, data breakpoints can be a good alternative to just placing regular breakpoints. Data breakpoints are also great for scenarios such as finding where a global object is being modified or being added or removed from a list.
And, if you're a C++ developer who develops large applications, Visual Studio 2019 has made symbols out of proc, which allows you to debug those applications without experiencing memory-related issues.
Search while debugging
You've probably been there before, looking in the Watch window for a string amongst a set of values. In Visual Studio 2019, we've added search in the Watch, Locals, and Autos windows to help you find the objects and values you're looking for.
You can also format how a value is displayed within the Watch, Locals, and Autos windows. Select (by double-clicking) one of the items in any of the windows and add a comma (",") to access the drop-down list of possible format specifiers, each of which includes a description of its intended effect.
For more information, see the Enhanced in Visual Studio 2019: Search for Objects and Properties in the Watch, Autos, and Locals Windows blog post.
Get a snapshot of your app's execution in the cloud to see exactly what's happening. (This feature is available in Visual Studio Enterprise, only.)
We've added support for targeting ASP.NET (Core and desktop) applications that run on an Azure VM. And, we've added support for applications that run in an Azure Kubernetes Service. The Snapshot Debugger can help you dramatically reduce the time it takes to resolve issues that occur in production environments.
For more information, see the Debug live ASP.NET Azure apps using the Snapshot Debugger page, and the Introducing Time Travel Debugging for Visual Studio Enterprise 2019 blog post.
Microsoft Edge Insider support
Pinnable Properties tool
New in 16.4: Now, it's easier to identify objects by their properties while debugging with the new Pinnable Properties tool. Just hover the cursor over a property you want to display in the debugger window of the Watch, Autos, and Locals windows, select the pin icon, and immediately see the information you're looking for at the top of the window!
For more information, see the Pinnable Properties: Debug & Display Managed Objects YOUR Way blog post.
We update Visual Studio 2019 often with new features that can make your development experience even better. To learn more about our latest innovations, check out the Visual Studio Blog. For a record of what we've released in preview to date, take a look at the Preview Release Notes. And for a list of what we're planning to release next, see the Visual Studio Roadmap.
Meanwhile, here are a few of our new features currently in the works.
Visual Studio 2019 support for Visual Studio Codespaces (Preview)
Now more than ever, developers are juggling multiple projects at work and at home. New features, bug fixes, PR reviews, & prototypes all compete for time and require constant context-switching. Visual Studio Codespaces can help. You can develop entirely in the cloud and create dedicated, custom environments for each of your projects in seconds. With Visual Studio 2019, you can connect to your codespace and work just as you would locally.
For more information, see the What is Visual Studio Codespaces page.
Improved Git experience in Visual Studio 2019 (Preview)
We continue to iterate on a revamped Git experience to improve your productivity when working with code on GitHub, Azure Repos, and other remote hosting services. You can initialize and push from within Visual Studio 2019 with a single action (or click). You can also create new branches, manage current branches, and resolve merge conflicts.
For more information, see the Exciting new updates to the Git experience in Visual Studio blog post.
For more information about the Preview release—and a download link if you'd like to try it out—see the Visual Studio Preview page.
Give us feedback
Why send feedback to the Visual Studio team? Because we take customer feedback seriously. It drives much of what we do.
If you want to make a suggestion about how we can improve Visual Studio, you can do so by using the Suggest a Feature tool.
If you experience an issue where Visual Studio stops responding, crashes, or other performance issue, you can easily share repro steps and supporting files with us by using the Report a Problem tool.