Blazor Server och lite WebAssembly

För drygt ett år sedan publicerades posten Blazor, ett första intryck här på bloggen. Då var Blazor i icke-produktionsstatus, version 0.6, till skillnad från nu när det sedan en tid tillbaka är produktionsdugligt. Blazor Server släpptes tillsammans med .NET Core 3.0 och Blazor WebAssembly är sedan .NET Core 3.1 i preview-status.

Bra resurser

Det verkar ha hänt en del sedan den tidigare versionen till nu och det återstår att se vad som händer när WebAssembly-versionen släpps. Skillnaden mellan dom olika varianterna, Server och WebAssembly, är hur applikationen hostas och var ingående komponenter renderas och uppdateras. Skillnaderna mellan modellerna beskrivs här:

Jag har precis börjat bekanta mig med Blazor "lite mer på allvar" genom att migrera ett hemma-hobby-projekt från React till Blazor Server. I och med det här jobbet började titta på en serie i 15 delar av Nick Chapsas (Nick finns här på Github https://github.com/sponsors/Elfocrash), som behandlar allt möjligt i server-side Blazor från grundläggande Razor components till cross-platform mobile apps och autentication mm. Jag har inte tittat på alla avsnitt ännu, men jag gillar den skarpt såhär långt. Kolla på den här:

En riktigt bra start kan man få bara genom att man skapar en Blazor App via New Project i Visual Studio eller via .NET Core CLI:

dotnet new blazorserver

i din favorit-kommandotolk.

Om man tittar på det nyskapade projektet så ser man exempel på routing och dependency injection mm. Det nyskapade projektet är körbart direkt och att lägg några minuter på att läsa kod och debugga är välinvesterad tid.

Vad händer härnäst?

Det kommer att bli väldigt intressant att se vad WebAssembly-versionen kommer med när den släpps skarpt. Den finns som sagt i preview och installeras enkelt mha dotnet cli och templaten Microsoft.AspNetCore.Components.WebAssembly.Templates. För mer info, se här Get started with ASP.NET Core Blazor.

Skarp version av Wasm-versionen är beräknad till maj i år.