Code samples for the Wrox Press book Professional C# and .NET - 2021 Edition
To compile and run the samples, you need Visual Studio 2019, Visual Studio for Mac, or Visual Studio Code.
You can download these tools here: Visual Studio.
The console app samples can be used on Windows, Linux, or Mac. Here is the installation procedure for .NET: .NET
If you're using Visual Studio, Version 16.9 or a later version of Visual Studio 2019 is needed. With the Visual Studio Installer you need to select this workload to compile most of the code samples: .NET Core cross-platform development.
ASP.NET Core samples need this workload: ASP.NET and web development.
See the WinUI.md for the requirements of building and running the WinUI samples.
See updates for issues and updates.
With the main branch every sample should compile and run successfully (with the deadlock and race-conditions samples, successfully means that a deadlock and a race-condition occurs).
The dotnet6 branch will be used to show some early changes with C# 10 and .NET 6 using previews of C# 10 and .NET 6. Previews might not run with the next preview available.
After .NET 6 is released, the .NET 5 version of the code might move to a different branch, but it will be kept available.
If you find some problems with the source code, issues to compile and run the samples, please create an issue.
If you have some questions about the code samples, or just want to drop a message, you're welcome to use Discussions.
For questions with your source code that are not related to the book and the code samples, it's better to use StackOverflow.
I'm offering training and consulting programming .NET applications and services. For academic use, slides are available for free in a separate private repository. Just send me an email using your university / high school account, tell me how you intent to use the book to get access to the available, and send me your github account. You'll get access to this repository.
If you are interested for commercial use of the presentations, get in contact for a commercial offering.
Here's the list of chapters and the folders for the code samples:
- Chapter 1 - .NET Applications and Tools (HelloWorld)
- Chapter 2 - Core C# (CoreCsharp)
- Chapter 3 - Classes, Structs, Tuples, and Records (Types)
- Chapter 4 - Object-Oriented Programming with C# (ObjectOrientation)
- Chapter 5 - Operators and Casts (OperatorsAndCasts)
- Chapter 6 - Arrays (Arrays)
- Chapter 7 - Delegates, Lambdas, and Events (Delegates)
- Chapter 8 - Collections (Collections)
- Chapter 9 - Language Integrated Query (LINQ)
- Chapter 10 - Errors and Exceptions (ErrorsAndExceptions)
- Chapter 11 - Tasks and Asynchronous Programming (Async)
- Chapter 12 - Reflection, Metadata, and Source Generators (ReflectionAndSourceGenerators)
- Chapter 13 - Managed and Umanaged Memory (Memory)
- Chapter 14 - Libraries, Assemblies, Packages, and NuGet (Libraries)
- Chapter 15 - Dependency Injection and Configuration (DependencyInjectionAndConfiguration)
- Chapter 16 - Diagnostics and Metrics (LoggingAndMetrics)
- Chapter 17 - Parallel Programming (Parallel)
- Chapter 18 - Files and Streams (FilesAndStreams)
- Chapter 19 - Networking (Networking)
- Chapter 20 - Security (Security)
- Chapter 21 - Entity Framework Core (EFCore)
- Chapter 22 - Localization (Localization)
- Chapter 23 - Tests (Tests)
- Chapter 24 - ASP.NET Core (AspNetCore)
- Chapter 25 - Services (Services)
- Chapter 26 - Razor Pages and MVC (RazorAndMVC)
- Chapter 27 - Blazor (Blazor)
- Chapter 28 - SignalR (SignalR)
- Chapter 29 - Windows Apps (Windows)
- Chapter 30 - Patterns with XAML Apps (Patterns)
- Chapter 31 - Styling Windows Apps (Styles)
See Code of conduct
Have fun coding and enjoy the book!
Christian