The Visual Studio for Mac team is kicking off the new year with our best release ever! Visual Studio 2019 for Mac version 8.4, released today, brings several exciting enhancements to the developer experience. Many of these items were top requests from our community and include:
- Support for the latest stable version of .NET Core 3.1
- Scaffolding support for ASP.NET Core projects
- The ability to develop and publish ASP.NET Core Blazor Server applications
- Refinements to the editing experience, including .razor file support
- Improvements to the IDE experience when using assistive technologies
- Pack support for .NET Core library projects
To learn more about all of the changes in this release of Visual Studio for Mac, see our release notes.
Be up to date with .NET Core 3.1
This release of Visual Studio for Mac adds full support for .NET Core 3.1. You’ll be able to create .NET Core 3.1 applications and take them from building and debugging through publishing. .NET Core 3.1 is a long-term supported (LTS) release, meaning it will continue to be supported for three years.
For more details on the full set of changes introduced by .NET Core 3.1, see the release notes.
Develop faster with ASP.NET Core Scaffolding
Our community has suggested we add ASP.NET Core Scaffolding to Visual Studio for Mac. We listened and brought Scaffolding for ASP.NET Core projects to Visual Studio for Mac version 8.4. Scaffolding speeds up and simplifies ASP.NET Core app development by generating boilerplate code for common scenarios.
Click on the New Scaffolding… entry in the Add flyout of the project context menu to access the Scaffolding feature for your ASP.NET Core projects in Visual Studio for Mac. The node on which you opened the right-click context menu will be the location where the generated files will be placed.
A scaffolding wizard will pop up to assist in generating code into your project. I’m using one of our ASP.NET Core sample projects – a movie database app – to demonstrate scaffolding in action. I’ve used the new feature to create pages for Create, Read, Update, and Delete operations (CRUD) and a Details page for the movie model.
Once the wizard closes, it will add the required NuGet packages to your project and create additional pages, based on the scaffolder you chose.
You can also take a look at our documentation for more information on Scaffolding ASP.NET Core projects.
Build and publish ASP.NET Core Blazor Server applications
In addition to ASP.NET Core Scaffolding, we’ve also added support for developing and publishing ASP.NET Core Blazor Server applications based on feedback from our users. Blazor is a framework for building interactive client-side web UI using .NET and brings with it several advantages including the ability to:
- Write interactive web UIs using C# instead of JavaScript
- Leverage the existing .NET ecosystem of .NET libraries
- Share app logic across server and client
- Benefit from .NET’s performance, reliability, and security
- Build on a common set of easy-to-use, stable, feature-rich languages, frameworks, and tools
Blazor uses open web standards and requires no additional plugins or code transpilation meaning that anything you develop using it will work in all modern web browsers on the desktop or on mobile. If you’re interested in learning more about Blazor, check out the Blazor webpage.
With Visual Studio 2019 for Mac 8.4, you can create new Blazor Server projects complete with the ability to build, run, and debug. When creating a New Project, you’ll now find the Blazor Server App project template.
When working with Blazor applications, you’ll be working with .razor files. Visual Studio 2019 for Mac version 8.4 brings full support for colorization and completions when working with these files in the editor.
You can publish your Blazor applications directly to Azure App Service using Visual Studio for Mac. Get started with a free Azure account if you don’t already have one by signing up here. You’ll get access to a number of popular services, and over 25 always free services with your account.
Be more productive with editor improvements
Visual Studio for Mac now supports full colorization, completion, and IntelliSense for .razor files. We’ve continued to work on adding features that were suggested to us by our users. This feedback has caused us to bring back preview boxes for code changes that may occur from a code fix or analysis suggestion. Colorization has also been tweaked to be more consistent with the Windows Visual Studio 2019 experience.
Work in the IDE using assistive technologies
We know it’s important to support various assistive technologies in order to ensure Visual Studio for Mac can be used by all. Ensuring the developer experience is accessible to anyone is extremely important to us and we’re committed to empowering everyone to develop on the Mac. You’ll find the following improvements and more available in Visual Studio for Mac 8.4:
- Better focus order when navigating using assistive technologies
- Higher color contrast ratios for text and icons
- Reduction of keyboard traps hindering IDE navigation
- More accurate VoiceOver dictation and navigation
- Completely rewritten IDE components to make them accessible
- Expanded VoiceOver coverage for alert text
While we’ve made rapid progress improving accessibility of the entire IDE over the last few months, we know there’s still a lot more we can do to improve to ensure Visual Studio for Mac can delight everyone. Accessibility will continue to be a top priority for our team. We welcome your feedback to assist us in guiding this work. As the PM leading the accessibility effort, I invite you to reach out to me directly via dominicn@microsoft.com if you’d be willing to share your expertise or if you’d like to speak with me in more detail about our work so far.
Distribute .NET Core library projects with NuGet Pack support
Interested in distributing .NET Core class libraries you’ve created to a broader audience? We’ve made it easy for developers to create a NuGet package from a .NET Core library project in Visual Studio for Mac by right-clicking a project then selecting Pack.
Once you’ve selected the Pack menu option for your library project, a NuGet package (.nupkg) file will be generated in the output folder.
Update to Visual Studio 2019 for Mac version 8.4 today!
In this post, you learned about all the new improvements in the Visual Studio for Mac experience. Now it’s time to download the release or update to the latest version on the Stable channel and give these new features and enhancements a try!
If you have any feedback you’d like to share on this version of Visual Studio for Mac, we invite you to reach out to us on Twitter at @VisualStudioMac. If you run into any issues, you can use Report a Problem to provide us with details and notify the team. In addition to issues, we welcome feature suggestions on the Visual Studio Developer Community website.
Happy coding and a happy new year from all of us on the Visual Studio for Mac team!
I updated to 8.4.2 and now navigate -> find references of all overloads doesn’t work and is taking forever to complete 🙁
using with Unity
Awesome! Thank you for continuing to invest in VS for Mac. The IDE has gotten to a point where I no longer need to have Boot Camp / Win 10, I just do my development in OSX when I'm on the move. I wish like VS Code, VS will be built form one code base sometime in the future. Although there is feature parity between VS on Mac and VS on Windows, the UX /...
Why is Visual Studio for Mac not available for Linux?
Can you guys make VS for Mac available for Linux?
I agree with Fred. Correct me if I’m wrong, but I think there are more developers using Linux than macOS. MonoDevelop has been taken away from Linux and turned into a Mac exclusive IDE application. I hope that, by the time .NET 5.0 arrives, Microsoft will figure out a way to get a full Visual Studio IDE available on Linux.