Book Image

Blazor WebAssembly by Example

By : Toi B. Wright
Book Image

Blazor WebAssembly by Example

By: Toi B. Wright

Overview of this book

Blazor WebAssembly makes it possible to run C# code on the browser instead of having to use JavaScript, and does not rely on plugins or add-ons. The only technical requirement for using Blazor WebAssembly is a browser that supports WebAssembly, which, as of today, all modern browsers do. Blazor WebAssembly by Example is a project-based guide for learning how to build single-page web applications using the Blazor WebAssembly framework. This book emphasizes the practical over the theoretical by providing detailed step-by-step instructions for each project. You'll start by building simple standalone web applications and progress to developing more advanced hosted web applications with SQL Server backends. Each project covers a different aspect of the Blazor WebAssembly ecosystem, such as Razor components, JavaScript interop, event handling, application state, and dependency injection. The book is designed in such a way that you can complete the projects in any order. By the end of this book, you will have experience building a wide variety of single-page web applications with .NET, Blazor WebAssembly, and C#.
Table of Contents (11 chapters)

Creating the ExpenseTracker project

The ExpenseTracker project will be created by using Microsoft's Blazor WebAssembly App project template to create a hosted Blazor WebAssembly app. First, we will remove the demo project. Then, we will add the classes and API controllers needed for our project. We will add a table to the Home page to display the current list of expenses. Finally, we will use the EditForm component in conjunction with many of the built-in input components to add and edit the expenses.

Getting started with the project

We need to create a new Blazor WebAssembly app. We do this as follows:

  1. Open Visual Studio 2019.
  2. Click the Create a new project button.
  3. In the Search for templates (Alt + S) textbox, enter Blazor and hit the Enter key.

    The following screenshot shows the Blazor WebAssembly App project template that we will be using.

    Figure 9.4 – Blazor WebAssembly App project template

  4. Select the Blazor WebAssembly App project template...