ASP.NET Core Starts Path to Hot Reload, AoT Compilation, Blazor Desktop, More

The first preview of .NET 6 arrived with grand plans for ASP.NET Core -- the web-dev component -- including much-requested features like hot reload, ahead-of-time (AoT) compilation and the beginnings of Blazor hybrid desktop projects.

Developers need to wait a while for all those goodies, though, as EF Core 6 will debut with parent framework .NET 6 in November as part of long-term release (LTS) that combines formerly separate components into one unifying umbrella platform, and Preview 1 only sports minor features such as:

  • Support for IAsyncDisposable in MVC
  • DynamicComponent
  • Input ElementReference exposed on relevant components
  • dotnet watch now does dotnet watch run by default
  • Nullable reference type annotations

The list of those aforementioned goodies, however, was presented as a raft of GitHub issues:

One of the planned features, Blazor hybrid desktop apps, has garnered much interest among developers interested in Blazor, a WebAssembly-based (in the client) scheme that allows for web development with C# instead of JavaScript. Because the default web renderer for Blazor can be swapped out for other targets, Blazor has been tasked for mobile development with the experimental Mobile Blazor Bindings project, and that in turn has led to the fledgling Blazor desktop effort.

That effort stems from an Oct. 26, 2020, issue summarized like this: "In .NET 6 we want to extend Blazor's target scenarios to include native desktop applications via web-based rendering."

Blazor Desktop User Stories
[Click on image for larger view.] Blazor Desktop User Stories (source: Microsoft).

One developer quick to jump on the Blazor desktop bandwagon was Sam Basu, Progress Developer Advocate for Telerik products, who penned a blog post about it yesterday, when .NET 6 Preview 1 was announced.

He pointed out two ways to create Blazor desktop apps: wrapped in an Electron shell or by extending Blazor Mobile Bindings, which is based on Xamarin.Forms, Microsoft's mobile development framework that is in the process of evolving into .NET MAUI.

The first method, using Electron, requires the bundling of the Chromium engine and the Node.js runtime, making for a hefty package.

Blazor guru Steve Sanderson, though, examined ways to lessen the load way back in 2019, while presenting the WebView method.

"It does beg the question as to whether lighter web shells could do the job of hosting modern Blazor apps with a level of consistency," Basu said of Sanderson's post. "Time will tell, but thankfully there are some alternatives to play around with."

ASP.NET Core Roadmap
[Click on image for larger view.] ASP.NET Core Roadmap (source: Microsoft).

Developers can track the development of those alternatives and ASP.NET Core itself by peeking into Microsoft's open planning process for .NET 6 via GitHub issues presented in the Themes of .NET site -- where development efforts are tracked -- and the ASP.NET Core 6 Roadmap. (Ironically, the Blazor-powered Themes of .NET site is down as this is being written, perhaps not a good look for Microsoft.)

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus


  • VS Code Now Has Apple Silicon Builds for Native Mac Development

    Goodbye Rosetta, hello M1. Visual Studio Code has been updated with new builds that let it run natively on machines with Apple Silicon (M1), the company's own ARM64 chips.

  • Visual Studio 2019 for Mac v8.9 Ships with .NET 6 Preview 1 Support

    During its Ignite 2021 online event for IT pros and developers this week, Microsoft shipped Visual Studio 2019 for Mac v8.9, arriving with out-of-the-box support for .NET 6 Preview 1, which the company also released recently.

  • Analyst: TypeScript Now Firmly in Top 10 Echelon (Ruby, Not So Much)

    RedMonk analyst Stephen O'Grady believes TypeScript has achieved the rare feat of firmly ensconcing itself into the top 10 echelon of his ranking, now questioning how high it might go.

  • Black White Wave IMage

    Neural Regression Using PyTorch: Training

    The goal of a regression problem is to predict a single numeric value, for example, predicting the annual revenue of a new restaurant based on variables such as menu prices, number of tables, location and so on.

Upcoming Events