Book Image

Mobile Development with .NET - Second Edition

By : Can Bilgin
Book Image

Mobile Development with .NET - Second Edition

By: Can Bilgin

Overview of this book

Are you a .NET developer who wishes to develop mobile solutions without delving into the complexities of a mobile development platform? If so, this book is a perfect solution to help you build professional mobile apps without leaving the .NET ecosystem. Mobile Development with .NET will show you how to design, architect, and develop robust mobile applications for multiple platforms, including iOS, Android, and UWP using Xamarin, .NET Core, and Azure. With the help of real-world scenarios, you'll explore different phases of application development using Xamarin, from environment setup, design, and architecture to publishing. Throughout the book, you'll learn how to develop mobile apps using Xamarin and .NET Standard. You'll even be able to implement a web-based backend composed of microservices with .NET Core using various Azure services including, but not limited to, Azure Active Directory, Azure Functions. As you advance, you'll create data stores using popular database technologies such as Cosmos DB and data models such as the relational model and NoSQL. By the end of this mobile application development book, you'll be able to create cross-platform mobile applications that can be deployed as cloud-based PaaS and SaaS.
Table of Contents (25 chapters)
1
Section 1: Understanding .NET
5
Section 2: Xamarin and Xamarin.Forms
9
Section 3: Azure Cloud Services
14
Section 4: Advanced Mobile Development
18
Section 5: Application Life Cycle Management

Modeling data

The best way to get accustomed to various data models offered by Cosmos DB would be to implement inherently relational domain models using the provided NoSQL data access APIs. This way, it is easier to grasp the benefits of different data models. In this section, we will be creating the main aggregate roots of our domain on Cosmos DB using the SQL API access model and we will implement the repository classes that we will use in our web applications to access these document collections. Finally, we will also talk about denormalized and referenced data.

For this exercise, let's create a relational data model for our auction applications.

In this setup, we have three big clusters of data:

  1. Vehicles, which includes the manufacturer, model, year, engine specifications, and some additional attributes describing the car
  2. Users, which consists of the sellers and buyers of the cars sold through auctions
  3. Auctions, which consists of some metadata about the...