Book Image

.NET MAUI Cross-Platform Application Development - Second Edition

By : Roger Ye
3 (1)
Book Image

.NET MAUI Cross-Platform Application Development - Second Edition

3 (1)
By: Roger Ye

Overview of this book

An evolution of Xamarin.Forms, .NET MAUI is a cross-platform framework for creating native mobile and desktop apps with C# and XAML. Using .NET MAUI, you can develop apps that’ll run on Android, iOS, macOS, and Windows from a single shared codebase. In this revised edition of .NET MAUI Cross-Platform Application Development you will be introduced to .NET 8 and get up to speed with app development in no time. The book begins by showing you how to develop a cross-platform application using .NET MAUI, including guidance for migrating from Xamarin.Forms. You’ll gain all the knowledge needed to create a cross-platform application for Android, iOS, macOS, and Windows following an example project step by step. As you advance, you’ll integrate the latest frontend technology into your app using Blazor components, including the new Blazor Bindings feature. After this, you’ll learn how to test and deploy your apps. With new coverage on creating mock .NET MAUI components, you can develop unit tests for your application. You will additionally learn how to perform Razor component testing using bUnit. By the end of this book, you’ll have learned how to develop your own cross-platform applications using .NET MAUI.
Table of Contents (18 chapters)
Free Chapter
1
Part 1: Exploring .NET MAUI
9
Part 2: Implementing .NET MAUI Blazor
13
Part 3: Testing and Deployment
16
Other Books You May Enjoy
17
Index

Understanding Razor syntax

Blazor applications are composed of Razor components. As discussed in Chapter 3, User Interface Design with XAML, XAML is a language that has its roots in XML. UI elements based on XAML consist of XAML pages and their corresponding C# code-behind files. Razor components closely resemble this pattern, with the primary difference being that Razor employs HTML as its markup language and C# code can be directly embedded within the HTML. Alternatively, we can opt to separate the C# code into a code-behind file, thus maintaining a clear distinction between the UI and its underlying logic.

Code blocks in Razor

To create the simplest Razor component, it would appear as follows:

<h3>Hello World!</h3>
@code {
  // Put your C# code here
}

In the previous example, we can design our page similarly to an HTML page while incorporating programming logic within a code block. Razor pages or Razor components are generated as C# classes, with the...