Get in Touch
 Duration 21 hours

Course Outline

Introduction to the Modern .NET Platform

  • Overview of the .NET 8 runtime, SDK, and unified platform
  • Comparative analysis of .NET Framework, .NET Core, and the evolution to .NET 8+
  • Project structures, target frameworks, and fundamentals of multi-targeting
  • Configuration of the development environment and associated tooling

Modern C# and Future-Oriented Language Practices

  • Utilizing records, init-only setters, and immutability patterns
  • Enhanced pattern matching and switch expressions
  • Implementation of nullable reference types and compiler-driven safety
  • Best practices for Async/await and memory-efficient streaming
  • Generic math, static abstracts in interfaces, and performance-oriented APIs
  • Preparing codebases for upcoming C# 12/13 features on the .NET 8 platform

ASP.NET Core Fundamentals and Application Bootstrap

  • Host builder, middleware pipeline, and request lifecycle management
  • Decision criteria for Minimal APIs versus controller-based APIs
  • Configuration providers, environment-specific settings, and secrets management
  • Handling static files, routing, and endpoint conventions
  • Configuring the dependency injection container and managing service lifetimes

REST API Design and Implementation

  • REST maturity model, resource modeling, and URI design principles
  • Application of HTTP methods, status codes, and content negotiation
  • Request validation, model binding, and integration with FluentValidation
  • Versioning strategies for both public and internal APIs
  • Generating documentation using OpenAPI and Swagger UI
  • Conducting integration testing of APIs with TestServer and WebApplicationFactory

Enterprise Dependency Injection and Inversion of Control

  • Constructor injection, service lifetimes, and management of captive dependencies
  • Implementing decorator and factory patterns within the built-in container
  • Integrating Scrutor and third-party dependency injection libraries
  • Modular service registration and feature-based organization
  • Addressing cross-cutting concerns via middleware and filters

Logging, Configuration, and Centralized Error Handling

  • Structured logging using Microsoft.Extensions.Logging and Serilog
  • Managing log levels, scopes, enrichment, and sink configuration
  • Implementing exception middleware and global error handling pipelines
  • Utilizing ProblemDetails and RFC 7807-compliant error responses
  • Setting up health checks, telemetry, and observability hooks
  • Preparation for correlation IDs and distributed tracing

Software Architecture for Enterprise .NET Solutions

  • Principles of layered, hexagonal, and clean architecture
  • Domain-driven design building blocks in the .NET ecosystem
  • Implementing CQRS and mediator patterns using MediatR
  • Applying repository and unit-of-work patterns with EF Core
  • Vertical slice architecture for enhanced feature cohesion
  • Evaluating trade-offs between monolith, modular monolith, and microservices

Security for Web Applications and APIs

  • Authentication schemes: JWT, OAuth2, OpenID Connect, and cookie-based flows
  • Authorization policies, claims-based access, and resource-based guards
  • Enforcing HTTPS, HSTS, and secure header middleware
  • Input sanitization, output encoding, and mitigation of OWASP Top 10 threats
  • Implementing rate limiting, CORS policies, and anti-forgery token handling
  • Managing secrets with Azure Key Vault and environment-driven rotation

Code Quality, Maintainability, and Best Practices

  • Establishing coding standards, utilizing EditorConfig, and dotnet format
  • Performing static analysis with Roslyn analyzers and integrating SonarQube
  • Conducting unit testing with xUnit and mocking using Moq or NSubstitute
  • Implementing integration and contract testing within CI pipelines
  • Refactoring techniques for long-lived legacy modules
  • Best practices for documentation, API contracts, and knowledge sharing

Modernization Strategy: Assessing Legacy .NET Framework Code

  • Portfolio analysis: classifying applications by criticality, complexity, and business value
  • Utilizing the .NET Upgrade Assistant and compatibility analyzer
  • Identifying deprecated APIs, platform-specific dependencies, and third-party gaps
  • Considering Windows-specific APIs and WCF migration implications
  • Developing a migration roadmap with risk-based prioritization

Progressive Migration and Coexistence Techniques

  • Applying the Strangler Fig pattern to incrementally replace legacy subsystems
  • API-first migration: exposing .NET Framework domains through REST facades
  • Message-based bridging using RabbitMQ, Azure Service Bus, or Kafka
  • Strategies for shared database coexistence and schema versioning
  • Running .NET Framework and .NET 8 side-by-side within the same infrastructure
  • Containerizing modern components while retaining legacy systems on IIS

Hands-On Migration Lab and Review

  • Applying the Upgrade Assistant to a representative legacy project
  • Refactoring Web Forms or WCF services into ASP.NET Core APIs
  • Implementing dependency injection, logging, and centralized error handling in the migrated solution
  • Adding authentication and authorization to the new API surface
  • Verifying coexistence through end-to-end integration testing
  • Final review, Q&A session, and guidance for post-training modernization planning

Requirements

  • Proficiency in C# programming and object-oriented design principles
  • Familiarity with core web development concepts, including HTTP, HTML, CSS, and basic JavaScript
  • A foundational understanding of relational databases and SQL
  • Prior exposure to .NET Framework or ASP.NET is beneficial but not mandatory

Target Audience

  • .NET developers and architects preparing to modernize legacy .NET Framework applications
  • Software engineers transitioning into enterprise .NET development roles
  • Technical leads overseeing platform migration and coexistence planning
  • DevOps and infrastructure specialists supporting .NET application lifecycles

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories