Microsoft build 2020: blazor webassembly is ready

Microsoft Build 2020: Blazor Webassembly is ready

The freshly published first variant of Blazor Webassembly carries the version number 3.2 in continuity at the published in December 2019 .Net Core 3.1. The next release should be together in November .Net 5.0 appear and also carry the version number 5.

Blazor Webassembly allows to develop Single Page Web Applications (SPA) with the programming language C #. The C # code is translated into the Microsoft Intermediate Language (MSIL) and as .Net Assembly loaded into the web browser. There an interpreter processes the MSIL code. It is based on the .Net variant "Mono" and on his part as a webassembly code.

The missing access to the Document Object Model (DOM) in the WebAgSembly Standard Microsoft with the JavaScript library Blazor.Webassembly.JS. It not only charges the mono runtime environment and the .Net Assemblies (System Assemblies and Own), but also updates the Cathedral in the browser based on changes that Blazor Webassembly takes in a so-called Virtual Cathedral (S. Fig. 1).

Microsoft Build 2020: Blazor Webassembly is ready

Blazor Webassembly VS. Blazor Server (ABB. 1)

Blazor WebAgassembly is something other than Blazor Server, which has been part of September 2019 .Net Core 3.0 or. 3.1 is available. For the latter, the Virtual Dom exists on the web server, and the synchronization with the actual browser cathedral is done with ASP.Net core signaler via websockets. A blazor server application looks to the user like a spa, but requires a continuous connection to the web server. Only short connection pitch can be suppressed.

Debugging, but no aot

Microsoft spokesman Scott Hunter demonstrated in his "The Journey to one .Net" (A long-catching of this is available on Channel 9) that Blazor Webassembly has now also owned the long missing debugging opportunities in both the browser console and within Visual Studio (S. Fig. 2). However, there are still restrictions in the development environment compared to the .Net usual debugging options. So the debugger does not start automatically at runtime errors and does not show the content for all data structures.

Microsoft Build 2020: Blazor Webassembly is ready

Debugging in Blazor Webassembly (ABB. 2)

The first Blazor WebAgSembly release also lacks the option discussed since the origin, .Net Assemblies "ahead of time" Compile in Webassembly. However, Microsoft reduces the file size by using the IL Linker and Brotli compression.

Javascript as a workaround still necessary

In addition to the AOT compilation, other functions are missing, which are available in JavaScript-based webframeworks as the modularization and the reloading of components as well as the isolation of CSS. On Github you will find a roadmap for more features in the upcoming version 5.0.

Currently, developers themselves have to access supposedly simple functions such as access to the title of the browser window or other data in the element of the website to the interoperability with JavaScript. After all, access in both directions is possible, so both from C # to JavaScript as well as JavaScript to C #.

Blazor as PWA

In Blazor Webassembly 3.2 is the support for Progressive Web App (PWA) already included. Developers can declare a blazing webassembly applications when creating as a PWA, so end user can install them in the browser. The procedure shows said video (S. Fig. 3).

Microsoft Build 2020: Blazor Webassembly is ready

Install the Blazor Apps as PWA (ABB. 3)

No Long-Term Support

Blazor Webassembly 3.2 has the status "Current version", So do not receive the long-term support (LTS) of .Net Core version 3.1 from December 2019. This means that users after the appearance of the next version, for the 10. November 2020 is planned to have only three months time to change the blazor webassembly version. The first LTS version of Blazor WebAgSembly is to be up to date in November 6.0 in .Net 6.0 appear.

Prerequisite for the current blazor webassembly version 3.2 is that .Net Core SDK as of version 3.1.300. It is necessary when compiling, even if the application is ignoring Mono version 6.13 runs. As a development environment Visual Studio 2019 V16.6, Visual Studio for Mac 8.6 or Visual Studio Code with the current C # extensions are used.

There are already numerous commercial and non-commercial additional components for Blazor, most of which run both on Blazor Webassembly and Blazor Server. A directory can be found on GitHub "Awesome Blazor".

Leave a Reply

Your email address will not be published.