Microsoft emits .NET 7 early release licensed for production, new Visual Studio preview

Microsoft has released .NET 7 Release Candidate (RC) 1, and according to the team: “This is the first of two … that are supported in production.”

There is also a new preview of Visual Studio 17.4, including improved support for multiple GIT repositories (a highly requested feature), and a preview of Markdown language support. Arm64 support is another focus, and this Visual Studio release adds native support for JavaScript development with Node.js, Game development with C++, and extension development.  

Identifying what is new in .NET 7 is confusing because of the many related projects, such as the C# language, ASP.NET, Entity Framework, Windows desktop frameworks, MAUI (Multi-platform App UI) and more, all of which have significant updates. There is also the question of why any organization might want to deploy a release candidate in production. One possible reason is performance, since Microsoft said that .NET 7 has “almost 1000 performance-impacting” changes. In some cases these are substantial and could translate to immediate savings in time and energy use.

One key feature is integrated container support. “You can now create containerized versions of your applications with just dotnet publish,” explained Program Manager Chet Husk. Developer response is positive: “Should greatly simplify containerization in some scenarios,” said one. Arm64 is not yet supported, though it is “on the roadmap.”

MAUI was released in May, and Visual Studio support was generally available last month, but Microsoft has plenty more to do. A glance at the GitHub repository shows over 1600 open issues, encouraging as evidence of usage, but also revealing numerous bugs and limitations. .NET 7 promises to bring better performance, a Map control and improved native interop.

ASP.NET Core shows a big effort to improve WebAssembly support, according to Program Manager Daniel Roth. This includes a new JavaScript interop mechanism which enables calling .NET code from JavaScript and vice versa, using attributes JSImport for JavaScript, and JSExport for .NET. This is independent of Blazor, a framework which includes .NET running in the browser via WebAssembly. ASP.NET is also getting improved HTTP/3 (QUIC) support in the built-in Kestrel web server.

Entity Framework Core 7, an update to the .NET object-relational mapping library, is getting full support for JSON columns, a feature in many database managers including SQL Server and PostgresSQL. SQLite support is “planned for post EF7,” according to the latest documentation.

Full general availability is expected in November.