Building Web Components Using Blazor
This chapter is about building web components using Blazor. These can be rich and interactive user interfaces that render as HTML and CSS to provide cross-platform browser support.
There are many advantages to using .NET for client-side web development. You can write 99% of your code using C# instead of JavaScript and interop with JavaScript modules for the other 1%. You can share business logic between the server and the client. Blazor implements .NET Standard as well as the latest .NET 8 libraries, so you can use the extensive older .NET libraries, both from Microsoft and third parties.
In the previous edition of this book, this chapter covered Blazor WebAssembly, a hosting model where the entire Blazor app and the .NET runtime were downloaded to the browser and executed there. One of the problems with Blazor WebAssembly is a slow initial startup experience for the visitor because a lot needs to be downloaded and executed on the client...