Learn modern web user interface (UI) development with server-side Blazor and Blazor WebAssembly
▶What You Will Learn
-Understand the different technologies that can be used with Blazor, such as Blazor Server and Blazor WebAssembly
-Find out how to build simple and advanced Blazor components
-Explore the differences between Blazor Server and Blazor WebAssembly projects
-Discover how Entity Framework works and build a simple API
-Get up to speed with components and find out how to create basic and advanced components
-Explore existing JavaScript libraries in Blazor
-Use techniques to debug your Blazor Server and Blazor WebAssembly applications
-Test Blazor components using bUnit
▶Key Features
-Get up to speed with Blazor fundamentals, actionable insights, and best practices
-Learn how to create and deploy a production-ready Blazor application
-Find out how, when, and why to use server-side Blazor and Blazor WebAssembly
▶Who This Book Is For
This web development book is for web developers and software developers who want to explore Blazor for building dynamic web UIs. This book assumes beginner-level knowledge of C# programming and intermediate-level web development skills.
▶What this book covers
- Chapter 1, Hello Blazor, will teach you about the difference between server-side and clientside Blazor. You will get an overview of how the technology works and a brief history of where Blazor comes from. Knowing the structure and differences between the hosting models is essential for understanding the technology.
- Chapter 2, Creating Your First Blazor App, helps you understand how to install and set up your development environment. You will create your first Blazor app (both server-side and client-side) and learn about the structure of the project template.
- Chapter 3, Introducing Entity Framework Core, teaches you how to create your database where you will store your data (blog posts, categories, and tags). You will be using the dotnet tool to create a new project to get a feel for the tool.
- Chapter 4, Understanding Basic Blazor Components, digs deeper into components, life cycle events, adding parameters, and sharing parameters between components. You will also create reusable components in this chapter.
- Chapter 5, Creating Advanced Blazor Components, digs even deeper into components, adding functionality such as child components, cascading parameters, and values, and covering how to use actions and callbacks.
- Chapter 6, Building Forms with Validation, takes a look at forms, how to validate forms, and how to build your own validation mechanism. This chapter will cover the most common use cases when it comes to handling forms, such as file upload, text, numbers, and triggering code when checking a checkbox.
- Chapter 7, Creating an API, looks at creating an API. When using Blazor WebAssembly, we need an API to get data.
- Chapter 8, Authentication and Authorization, looks at adding authentication and authorization to Blazor and making sure navigation such as redirecting to a login page works as expected.
- Chapter 9, Sharing Code and Resources, teaches you how it is possible to share code between client-side and server-side Blazor projects by adding all the things you need into a shared library. In this chapter, you will build a shared library that can be packaged as a NuGet package and shared with others.
- Chapter 10, JavaScript Interop, explores how you can leverage JavaScript libraries when using Blazor and make calls from C# to JavaScript. You will also take a look at how JavaScript is able to call C# functions in our Blazor app.
- Chapter 11, Managing State, looks into the different ways of managing state (persisting data), such as using LocalStorage or just keeping data in memory by using dependency injection. You will not only cover persisting data in a database, but you will also cover how dependency injection works on the different project types.
- Chapter 12, Debugging, teaches you how to debug your applications and add extended logging to figure out what's wrong in your application. You will not only look at traditional debugging but also at debugging C# code directly from within the web browser.
- Chapter 13, Testing, looks at automated testing so that you can make sure your components work as they should (and continue to do so). There is no built-in method to test Blazor applications but there is a really good community project called bUnit.
- Chapter 14, Deploying to Production, will take you through the different things you need to think about when it comes to running Blazor in production.
- Chapter 15, Where to Go from Here, is a short chapter with a call to action, some resources you can use, and a finale.