2 min read

Blazor 0.5.0 is here. Blazor is an experimental .NET client-side web framework that uses c# and HTML. It runs on a browser using WebAssembly mechanism. Here component logic and DOM interactions occur in the same process. The latest release includes features such as server-side Blazor, a new startup model, and early support for in-browser debugging among other updates.

Let’s discuss the highlights of Blazor 0.5.0 release.

Server-side Blazor

Blazor 0.5.0 release makes it possible to adopt the out-of-process model for Blazor by stretching it over a network connection so that you can run Blazor on the server with ease.

With Blazor 0.5.0 it is possible to run your Blazor components server-side on .NET Core. UI updates, event handling, and JavaScript interop calls get handled over a SignalR connection. You can also use JavaScript interop libraries while using server-side Blazor.

New Startup Model

Blazor 0.5.0 projects now make use of a new startup model, similar to the startup model in ASP.NET Core.

To configure the services for your Blazor app, each Blazor project consists of a Startup class with a ConfigureServices method. There’s also a Configure method for configuring the root components of the application.

Calling .NET from JavaScript

There’s a new feature added in Blazor 0.5.0 which lets you call .NET instance methods from JavaScript. You can do it by passing the .NET instance to JavaScript and wrapping it in a DotNetObjectRef instance.

The .NET instance then gets passed by reference to JavaScript. This allows you to invoke .NET instance methods on the instance by using the invokeMethod or invokeMethodAsync functions.

Adding Blazor to HTML file

In earlier releases, the project build had modified index.html in order to replace the blazor-boot script tag with a real script tag.  This made it difficult to use Blazor in arbitrary HTML files.

This mechanism has now been replaced in Blazor 0.5.0. You can add a script tag for client-side projects that references the _framework/blazor.webassembly.js script (which is generated as part of the build). You can add the script reference _framework/blazor.server.js. for server-side projects.

Support for in-browser debugging

Blazor 0.5.0 provides very basic debugging support in Chrome for client-side Blazor apps that run on WebAssembly. Despite the debugging support being limited and unpolished, it does show the basic debugging infrastructure.

For more info on Blazor 0.5.0 updates, check out the official release notes.

Read Next

Masonite 2.0 released, a Python web development framework

Node 10.0.0 released, packed with exciting new features


Subscribe to the weekly Packt Hub newsletter. We'll send you the results of our AI Now Survey, featuring data and insights from across the tech landscape.


  1. Blazer is ace. I spent the past year developing software in Angular + NGRX/Store. So much boilerplate! So for a learning exercise, I decided to write a Flux/Redux library for Blazor. Having strong-typing and reflection from C# made it a fantastic experience! Blazor is going to replace those javascript libraries, without a doubt!

    PS: Project name is “Blazor-Fluxor” on GitHub – https://mrpmorris.github.io/blazor-fluxor/


Please enter your comment!
Please enter your name here