Get in Touch

Course Outline

Overview of the Current .NET Ecosystem

  • Comprehensive view of the .NET 8 runtime, Software Development Kit (SDK), and unified platform capabilities
  • Evaluation of the historical progression from .NET Framework through .NET Core to modern .NET 8 releases
  • Fundamentals of project architecture, target framework specifications, and multi-targeting strategies
  • Establishment of development environments and essential tooling configurations for government applications

Advanced C# Syntax and Future-Ready Development Standards

  • Utilization of records, init-only properties, and immutability patterns to enhance data integrity
  • Implementation of advanced pattern matching techniques and switch expressions for streamlined logic
  • Adoption of nullable reference types and compiler-enforced safety mechanisms to reduce runtime errors
  • Application of asynchronous programming best practices and efficient memory management techniques
  • Employment of generic math capabilities, static abstract members in interfaces, and performance-optimized APIs for government workloads
  • Preparation of codebases to support upcoming C# 12/13 features within the .NET 8 framework

ASP.NET Core Fundamentals and Application Initialization

  • Configuration of the Host builder, middleware pipeline execution, and request processing lifecycle
  • Evaluation of Minimal APIs versus Controller-based architectures for specific government use cases
  • Management of configuration providers, environment-specific settings, and secure secrets handling
  • Implementation of static file services, routing mechanisms, and endpoint conventions
  • Configuration of the dependency injection container and definition of service lifetimes for enterprise scalability

RESTful API Design and Implementation Standards

  • Application of REST maturity models, resource modeling techniques, and standardized URI design principles
  • Proper utilization of HTTP methods, status codes, and content negotiation protocols
  • Implementation of request validation, model binding processes, and integration with FluentValidation
  • Development of versioning strategies for both public-facing and internal government APIs
  • Generation of API documentation using OpenAPI specifications and Swagger UI interfaces
  • Execution of API integration testing utilizing TestServer and WebApplicationFactory tools

Enterprise Dependency Injection and Inversion of Control

  • Management of constructor injection, service lifetimes, and prevention of captive dependencies in government systems
  • Implementation of decorator and factory patterns using the built-in dependency injection container
  • Integration of third-party DI libraries such as Scrutor to extend functionality
  • Organization of modular service registration and feature-based architectural structures
  • Addressing cross-cutting concerns through middleware components and filtering mechanisms

Logging, Configuration Management, and Centralized Error Handling

  • Implementation of structured logging using Microsoft.Extensions.Logging and Serilog for auditability
  • Configuration of log levels, diagnostic scopes, enrichment data, and sink destinations
  • Development of exception handling middleware and global error processing pipelines
  • Standardization of error responses using ProblemDetails and compliance with RFC 7807 standards
  • Implementation of health checks, telemetry data collection, and observability hooks for system monitoring
  • Integration of correlation IDs to support distributed tracing across government networks

Software Architecture for Enterprise .NET Solutions

  • Application of layered, hexagonal, and clean architecture principles for scalable government systems
  • Implementation of Domain-Driven Design (DDD) building blocks within the .NET environment
  • Utilization of CQRS and mediator patterns with MediatR to decouple application components
  • Application of repository and unit-of-work patterns with Entity Framework Core for data management
  • Adoption of vertical slice architecture to enhance feature cohesion and maintainability
  • Evaluation of architectural trade-offs between monolithic, modular monolith, and microservices approaches for government deployments

Security Protocols for Web Applications and APIs

  • Implementation of authentication schemes including JWT, OAuth2, OpenID Connect, and cookie-based flows for secure access
  • Development of authorization policies, claims-based access controls, and resource-specific guards
  • Enforcement of HTTPS standards, HSTS protocols, and secure header middleware configurations
  • Mitigation of input validation issues, output encoding practices, and adherence to OWASP Top 10 guidelines
  • Management of rate limiting policies, CORS restrictions, and anti-forgery token handling procedures
  • Secure secret management utilizing Azure Key Vault and automated rotation mechanisms for government compliance

Code Quality Assurance and Maintainability Standards

  • Enforcement of coding standards through EditorConfig and dotnet format utilities
  • Integration of static code analysis using Roslyn analyzers and SonarQube for vulnerability detection
  • Execution of unit testing frameworks including xUnit, with mocking capabilities via Moq or NSubstitute
  • Implementation of integration and contract testing within Continuous Integration (CI) pipelines
  • Application of refactoring techniques to modernize long-standing legacy modules in government software
  • Maintenance of comprehensive documentation, API contracts, and knowledge-sharing protocols for operational clarity

Modernization Strategy: Assessment of Legacy .NET Framework Applications

  • Portfolio analysis methodologies: classifying applications based on criticality, complexity, and business value to government missions
  • Utilization of the .NET Upgrade Assistant and compatibility analyzers to identify migration barriers
  • Identification of deprecated APIs, platform-specific dependencies, and third-party library gaps requiring resolution
  • Considerations for migrating Windows-specific APIs and Windows Communication Foundation (WCF) services
  • Development of risk-based migration roadmaps to prioritize modernization efforts effectively

Progressive Migration Techniques and System Coexistence

  • Application of the Strangler Fig pattern to incrementally replace legacy subsystems with modern solutions
  • Implementation of API-first migration strategies by exposing legacy domains through RESTful facades
  • Establishment of message-based bridging using RabbitMQ, Azure Service Bus, or Kafka for inter-system communication
  • Strategies for shared database coexistence and schema versioning during transition periods
  • Deployment configurations allowing .NET Framework and .NET 8 applications to operate side-by-side within the same infrastructure
  • Containerization of modern components while maintaining legacy services on Internet Information Services (IIS)

Practical Migration Laboratory and Review

  • Application of the Upgrade Assistant to a representative legacy government project for practical experience
  • Refactoring of Web Forms or WCF services into contemporary ASP.NET Core APIs
  • Implementation of dependency injection, logging mechanisms, and centralized error handling in the migrated solution
  • Integration of authentication and authorization controls into the new API surface
  • Verification of system coexistence through comprehensive end-to-end integration testing
    • Synthesis of findings, resolution of questions, and provision of post-training modernization planning guidance for government entities

Requirements

  • Proficiency in C# programming language and application of object-oriented design methodologies
  • Competence in web development standards, including HTTP protocols, HTML, CSS, and foundational JavaScript
  • Functional knowledge of relational database systems and Structured Query Language (SQL)
  • Previous experience with .NET Framework or ASP.NET is advantageous, though not a prerequisite

Audience

  • .NET developers and architects tasked with modernizing legacy .NET Framework applications for government agencies
  • Software engineers transitioning into enterprise-level .NET development positions within the public sector
  • Technical leaders overseeing platform migration strategies and system coexistence planning
  • DevOps and infrastructure personnel managing the lifecycle of .NET applications in federal environments
 21 Hours

Number of participants


Price per participant

Testimonials (2)

Upcoming Courses

Related Categories