Understanding .NET 7

The umbrella release of .NET 7 is due to finally unify all the disparate developer tooling and is much anticipated by the development community. The release was due sooner but, as with many things, was delayed by the COVID-19 pandemic. While .NET 6 arrived at the end of 2021, the release didn’t complete the unification and was missing some vital components. This year, everything should come together and it should allow developers to build all types of apps, whether for desktop, mobile or web, all on the same Base Class Library, runtime and compiler.

In the meantime, the .NET previews have marked the first step toward the next generation of .NET. As promised, Microsoft shipped its first .NET 7 preview in February 2022 and has now followed it up with .NET Preview 2. 

At XAM we are one of Australia’s leading .NET consultants, with clients in Sydney, Brisbane, Melbourne and we love .NET, the best part of .NET is that it continually innovates, it’s always getting faster and better.

What is .NET 7?

.NET 7 aims to build on the foundation of .NET 6 with a unified set of base libraries, runtime and a simplified development experience (SDK), all with a view to providing a higher developer productivity. 

The new .NET will focus on improved support for cloud-native scenarios, provide tools to make it easier for developers to upgrade legacy products and simplify the developer experience by making it easier to work with containers. .NET 7 also aims to improve the developer experience by offering simplification of set-up and configuration for secure authentication and authorisation, and improving application startup and runtime execution.

Here are just some of the exciting new features set to form part of .NET 7:

  • Cloud-native architecture – aimed at improving scale in large applications by creating autonomous systems (microservices) that can be deployed and scaled independently while lowering long-term costs. The microservices architecture is flexible and designed to evolve in a way that is impossible for monolithic architecture. 
  • Simplified set-up – designed to make configuration easier to ensure secure authentication and authorisation.
  • Performance improvements – aimed at bettering the performance of applications startup and runtime execution
  • Orleans – further investments in the .NET cross-platform framework for building distributed applications will see comprehensive documentation and improved integration with cloud services such as Azure App Services and Azure Container Apps. 
  • Improved containers – as the preferred way for many businesses to deploy cloud-native apps and microservices, Microsoft aims to enhance telemetry to enhance the observability of containers as well as to make container images smaller, faster and more secure. 
  • .NET Upgrade Assistant improvements – to help developers confidently upgrade their applications portfolio in a time-efficient way. The improvements will include more analysers, code fixers and support for additional app types. 
  • .NET Multi-Platform App UI (.NET Maui) – a huge part of .NET 7, .NET Maui is the future of cross-platform native UI with .NET. When it ships for .NET 7 it will deliver an improved inner development loop experience, support the latest .NET SDK tooling, enable faster app performance and share more code.
  • Hot Reload – a much requested and long-awaited feature that will help to simplify the process of app modernisation.

.NET 7 has been tested with Visual Studio, which is recommended for developers who want to give it a go. Visual Studio for Mac support for .NET 7 previews is in the pipeline and is due to be available soon. Once .NET 7 is officially released, it will receive free support and patches for 18 months. 

What is Included in the .NET 7 Previews? 

.NET Preview 1 was released in February 2022. While there aren’t a lot of mind-blowing improvements, the release clearly demonstrates that Microsoft aims to get the first version as streamlined as possible so it can remove any blockers and move forward with additional releases. There is a huge amount included in each of the previews so it would be impossible to cover all of the key scenarios and investments that Microsoft has made. However, some of the most notable improvements in the first preview include performance gains, productivity features such as Hot Reload and new runtime and C# language improvements. Preview 1 also included annotations to APIs to support nullability, new APIs and ongoing JIT compiler optimisations. 

.NET 7 Preview 2, released in March 2022, included enhancements to RegEx source generators along with a major set of improvements to the .NET CLI experience. There are loads of new features that developers are able to get hold of and start experimenting with straight away. The SDK improvements, for example, provide an entirely new, streamlined tab completion experience. 

In addition, Microsoft plans to make broad investments in ASP.NET Core, Blazor, EF Core, WinUI and other platforms. In fact, there have already been a few preview releases, most notably ASP.NET Core Preview 1 and Entity Framework 7 Preview 1.

The Future of .NET

Originally .NET was built for the internet revolution where distributed systems communicated over the internet. With multiple languages, one runtime, and a base set of libraries and APIs that were all compatible, it was at the forefront of innovation. However, like anything else in the technology space, .NET has had to evolve. .NET Core (being cross-platform and open source) was the start of the biggest evolution in .NET since its inception, some say ‘it saved .net’. .NET 7 is another iteration on a already mature and productive platform. The general release of .NET 7 is expected in November 2022. It’s important to note that .NET 7 ‘Current Release’ meaning that it has patches for 18 months, .NET 8 will be the next LTS supported version of .NET.

Microsoft holds the whole .NET community at the heart of everything they do and encourages new ideas and code contributions. The aim is to drive the .NET ecosystem forward into the platform of choice for developers far and wide.

If you need help with .NET then we are happy to help, contact us here.

Leave a Reply