Book Image

Apps and Services with .NET 8 - Second Edition

By : Mark J. Price
5 (7)
Book Image

Apps and Services with .NET 8 - Second Edition

5 (7)
By: Mark J. Price

Overview of this book

Elevate your practical C# and .NET skills to the next level with this new edition of Apps and Services with .NET 8. With chapters that put a variety of technologies into practice, including Web API, gRPC, GraphQL, and SignalR, this book will give you a broader scope of knowledge than other books that often focus on only a handful of .NET technologies. You’ll dive into the new unified model for Blazor Full Stack and leverage .NET MAUI to develop mobile and desktop apps. This new edition introduces the latest enhancements, including the seamless implementation of web services with ADO.NET SqlClient's native Ahead-of-Time (AOT) support. Popular library coverage now includes Humanizer and Noda Time. There’s also a brand-new chapter that delves into service architecture, caching, queuing, and robust background services. By the end of this book, you’ll have a wide range of best practices and deep insights under your belt to help you build rich apps and efficient services.
Table of Contents (19 chapters)
18
Index

Building a Blazor data component

In this section, we will build a component that will list, create, and edit employees in the Northwind database.

We will build it over several steps:

  1. Make a Blazor component that renders the name of an employee, set as a parameter.
  2. Make it work as a routable page as well as a component.
  3. Build and call an ASP.NET Core Minimal APIs web service.
  4. Call the web service in the component.

Making the component

We will add the new component to the existing Blazor project:

  1. In the Northwind.Blazor project, in the Components\Pages folder, add a new file named Employees.razor.
  2. Add statements to output a heading for the Employees component and define a code block, defining a property to store the name of a country, as shown highlighted in the following markup:
    @rendermode InteractiveServer
    <h1>Employees @(string.IsNullOrWhiteSpace(Country)
        ? "Worldwide" : "in " +...