.NET Fest 2018. Dino Esposito. ASP.NET Blazor—the C# Angular or the return of Silverlight?
Digital Strategist, BaxEnergy
Plain .NET Standard library with a Program.Main entry point that gets
downloaded and run in the browser
Only the .NET runtime is compiled to WASM; the source code you
write in C# runs natively as if it were a normal .NET application
Once the Mono runtime has been downloaded, it begins the download
of the actual .NET assemblies
The initialization step may take a while—about 3 seconds
For this reason, the standard Blazor Visual Studio template provides a
dedicated area for the UI to show during the loading phase
Blazor applications are a handful of pages
Razor language and strong componentization
A Blazor component is a self-contained chunk of HTML and C#.
Any necessary CSS goes in separate files, reasonably named after the
Blazor doesn’t do anything special with CSS and doesn’t impose any
Dealing with CSS is entirely up to you.
Publishing a Blazor application is just as easy as publishing any other
Doing this from Visual Studio will compile the application code and generate a
complete Web application with all of the final HTML, CSS, scripts and Blazor
A good starting place is to use the Publish to Folder option
All of the files of the application get put there.
Dist folder contains a standard index.htm page and an _framework folder
The _framework folder contains all of the compiled assemblies, as well as the
Blazor and Mono runtime components
Blazor and the others …
Can be a simple frontend connected to any sort of HTTP backend
Much like Angular and React and Vue
Except it’s C# and WebAssembly
Can be connected to a ASP.NET Core backend
Can be a server-side application that outputs C# based client code
Via SignalR and Azure SignalR
Pros and Cons
No page refreshes as if it were a pure client-side app
Debugging as if it were regular ASP.NET
No use of WebAssembly within the browser
Pure server-side code
Every operation in the browser (not using JS) is over the network
Doesn’t work offline
Scalability is up to you. Welcome ASP.NET SignalR Azure.