Book Image

C# 8 and .NET Core 3 Projects Using Azure - Second Edition

By : Paul Michaels, Dirk Strauss, Jas Rademeyer
Book Image

C# 8 and .NET Core 3 Projects Using Azure - Second Edition

By: Paul Michaels, Dirk Strauss, Jas Rademeyer

Overview of this book

.NET Core is a general-purpose, modular, cross-platform, and opensource implementation of .NET. The latest release of .NET Core 3 comes with improved performance and security features, along with support for desktop applications. .NET Core 3 is not only useful for new developers looking to start learning the framework, but also for legacy developers interested in migrating their apps. Updated with the latest features and enhancements, this updated second edition is a step-by-step, project-based guide. The book starts with a brief introduction to the key features of C# 8 and .NET Core 3. You'll learn to work with relational data using Entity Framework Core 3, before understanding how to use ASP.NET Core. As you progress, you’ll discover how you can use .NET Core to create cross-platform applications. Later, the book will show you how to upgrade your old WinForms apps to .NET Core 3. The concluding chapters will then help you use SignalR effectively to add real-time functionality to your applications, before demonstrating how to implement MongoDB in your apps. Finally, you'll delve into serverless computing and how to build microservices using Docker and Kubernetes. By the end of this book, you'll be proficient in developing applications using .NET Core 3.
Table of Contents (13 chapters)

Testing the application

If you choose to extend the functionality of this project, one thing that you would probably want to add is some automated testing. Let's get some terminology out of the way: this section concerns automated testing, but not unit testing. It's easy to get into debates and discussions regarding exactly what a test is, but for the purpose of this section, we are adding automated testing.

Since this application is very much a basic data access application, automated testing often gets omitted. It certainly could be argued that, since there is very little logic, you're effectively testing EF Core. Another main reason for not testing a basic CRUD application has always been how difficult it is. Testing database-centric applications has always been a difficult, time-consuming, and thankless task.

Firstly, many unit test purists would argue that...