Fast Track to .NET Core

A three-day course covering the fundamental concepts you’ll need to build and run systems using Microsoft .NET.

Course Structure and Contents

Module 1: .NET and C# Fundamentals

  • Introduction and background. The history of .NET
  • The .NET command line tools
  • Your first .NET Core application
  • Working with IDEs: Visual Studio, VS Code, Rider
  • Fundamentals of C#
  • Flow control
  • Variables and data types
  • Classes and structs
  • Inheritance and interfaces
  • Delegates and events

Module 2: The C# Programming Language

  • Errors and exceptions
  • Operators and overloads
  • Arrays and collections
  • Generics
  • Language Integrated Query (LINQ)
  • Asynchronous programming
  • Reflection and metaprogramming

Module 3: The .NET Runtime, Services and IO

  • Introducing the .NET Runtime
  • Dependency Injection
  • The Task Parallel Library
  • Working with files and directories
  • Working with streams
  • Networking and HTTP clients
  • Accessing APIs; serialization and deserialization

Module 4: Working with Databases in .NET

  • ADO.NET Fundamentals
  • Data access using Dapper
  • Introducing EF Core
  • Databases and data models: code first, model first,
  • Queries
  • Relationships
  • Updates
  • Conflict resolution
  • Versioning databases with migrations

Module 5: Building Web Applications with ASP.NET

  • Fundamentals of web application development
  • Introducing ASP.NET Core
  • ASP.NET MVC and the Model/View/Controller pattern
  • Dependency injection
  • The Razor view engine
  • Adding client-side content
  • Understanding routing
  • Authentication and Authorization
  • Action Filters
  • Building APIs with WebAPI

Module 6: Security, Testing and Performance

  • Unit testing with xUnit
  • Using mocks, fakes and stubs
  • Benchmarking and bottlenecks
  • Patterns for improving application performance
  • The .NET Core security model: principals and identities
  • OWASP: introduction to security vulnerabilities
  • Securing web applications with IdentityServer
  • Encryption

Target Audience and Prerequisites

This workshop assumes some familiarity with writing code - if you know how to edit a text file and run commands in a terminal window, you’re fine. Attendees will need to bring a laptop running Windows, macOS or Linux, and ideally install the Microsoft .NET SDK from https://dotnet.microsoft.com/download.

The ideal class size for this workshop is between 6–20 people. If you’d like to run it for a smaller or a larger group, please get in touch and let’s chat.

Upcoming Course Dates

No public dates are currently scheduled.

If you'd like to run this course for your team or at your conference, please get in touch