The .NET Stack Handbook

Version 1.0-draft · .NET 10

The .NET Stack Handbook

C#, VB, Databases, Web and the Operations Around Them

Start reading Download PDF

This is a working reference for building .NET software and running it once it is built. It covers the C# and VB languages, desktop and web user interfaces, four databases worth knowing, the .NET side of talking to them, and the containers, proxies, monitoring and pipelines that stand between a build and a service somebody depends on.

Every listing targets .NET 10 (net10.0) unless a section says otherwise. The C# and VB examples live under examples/ and are compiled on every build, so the code in those chapters is code that at least still builds. The SQL, nginx and Kubernetes listings are not machine checked and are marked as such where it matters.

It began as a single post on majorsilence.com that grew past five thousand lines. This is that post, split into chapters and given a build that can tell when it has gone stale.

Front matterBefore you start

  1. Preface

Part 1The Language

C# and VB side by side, the concurrency model they share, and the pieces that turn a pile of classes into an application you can test.

  1. 1 The Language: C# and VB
  2. 2 Asynchronous Work and Threads
  3. 3 Structuring an Application

Part 2User Interfaces

Desktop applications with Windows Forms and .NET MAUI, and printing real documents out of them with Crystal Reports.

  1. 4 Desktop User Interfaces
  2. 5 Crystal Reports

Part 3Data

Four stores worth knowing -- SQLite, PostgreSQL, SQL Server and Redis -- and the .NET side of talking to them, from raw ADO.NET up to EF Core.

  1. 6 SQLite
  2. 7 PostgreSQL
  3. 8 Microsoft SQL Server
  4. 9 Redis
  5. 10 Data Access in .NET

Part 4Web and Hosting

ASP.NET Core from dependency injection to Blazor, the JavaScript you still need in the browser, and getting the result served behind nginx.

  1. 11 ASP.NET Core
  2. 12 Containers, nginx and Kubernetes
  3. 13 JavaScript in the Browser

Part 5Operations

Knowing the thing is healthy once it is running, and getting it there repeatably.

  1. 14 Monitoring and Observability
  2. 15 Build Pipelines

Back matterAppendices

  1. A Git Clients