Enterprise ASP.NET Core 3 Development

This ASP.NET Core training focuses on the patterns and practices necessary for building
enterprise-class web applications and services with ASP.NET Core 3. The hands-on exercises
completed during the course include the development of a containerized microservice-based architecture. Special attention is given to topics such as asynchronous communication, high
availability, and resiliency.

Location

Public Classes: Delivered live online via WebEx and guaranteed to run . Join from anywhere!

Private Classes: Delivered at your offices , or any other location of your choice.

Goals
  1. Learn how to configure a development environment to support multiple .NET Core versions and deployment environments
  2. Understand the architecture and configuration of an ASP.NET Core application
  3. Acquire hands-on experience with using the ASP.NET Core routing to support a RESTful API design
  4. Learn about several different data access technologies (including Dapper and EF Core) and design patterns such as CQRS, Repository, and Unit of Work
  5. Understand the key aspects of a Microservice architecture and how to apply the principles of Domain-Driven Design (DDD)
  6. Use to Docker to containerize and deploy a microservice-based application
  7. Learn about the several microservice communication styles including asynchronous message-based and event-based patterns
  8. Gain hands-on experience designing for high-availability and resiliency
  9. Understand how to secure a Web API using token-based authentication with policy-based authorization
  10. Learn how to use Microsoft’s new Blazor technology for implementing client-side functionality with C#
Outline
  1. Setting up a Development Environment
    1. .NET Core SDK
    2. Visual Studio vs. VS Code
    3. Version Management with global.json
    4. Docker for Windows/macOS
    5. Remote Development using SSH
  2. ASP.NET Core Application Architecture
    1. NuGet Packages and Metapackages
    2. Application Startup
    3. Hosting Environments (Dev, Test, Stage, Prod)
    4. Middleware and the Request Processing Pipeline
    5. Services and Dependency Injection
  3. Application Configuration
    1. Configure and ConfigureServices
    2. Configuration Providers and Sources
    3. Configuration API
    4. Options Pattern
    5. HTTPS and HTTP/2
  4. Request Routing
    1. RESTful Services
    2. Endpoint Routing
    3. Attribute-Based Routing
    4. Route Templates
    5. Route Constraints
  5. Controllers
    1. Responsibilities
    2. Requirements and Conventions
    3. Explicit Dependencies Principle
    4. Action Results
  6. Data Access
    1. Persistence Ignorance
    2. Object-Relational Mapping
    3. ADO.NET vs. Dapper vs. EF Core
    4. Command Query Responsibility Segregation (CQRS)
    5. Repository and Unit of Work Patterns
  7. Web APIs
    1. ApiController Attribute
    2. CRUD Operations
    3. Content Negotiation
    4. Bad Requests
    5. Cross-Origin Resource Sharing (CORS)
  8. Using Docker
    1. Advantages of Containerized Applications
    2. Containers vs. Virtual Machines
    3. Microsoft ASP.NET Core Images
    4. Multi-Stage Builds
    5. Deploying a Monolithic Application
  9. Microservice Architecture
    1. Service-Oriented Architecture
    2. Domain-Driven Design (DDD)
    3. Data Sovereignty and the Bounded Context Pattern
    4. Polyglot Microservices
    5. API Gateway Pattern and Ocelot
    6. Container Orchestration
  10. Microservice Communication
    1. Communication Styles
    2. Container Networking
    3. Addressability and the Service Registry
    4. Eventual Consistency
    5. Asynchronous Message-Based Communication
    6. Asynchronous Event-Driven Communication
  11. Resiliency
    1. Handling Partial Failures
    2. Retires and Exponential Backoff
    3. Circuit Breaker Pattern
    4. Health Monitoring and Alerts
  12. Security and Authentication
    1. Token-Based Authentication
    2. Policy-Based Authorization
    3. IdentityServer
    4. Application Secrets
  13. Client-Side Development with Blazor
    1. Server-Side Blazor vs. Client Side Blazor
    2. Browser Support
    3. Forms and Validation
    4. Routing
    5. Authentication
  14. Conclusion
Class Materials

Each student in our Live Online and our Onsite classes receives a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this ASP.NET class:

  • Extensive experience using the C# language.
  • Previous experience developing applications with ASP.NET Core or ASP.NET MVC.
  • Some familiarity with HTML, CSS, and JavaScript.

Experience in the following would be useful for this ASP.NET class:

  • Some knowledge of Docker is recommended but not required.

Training for Yourself

$2,380.00 or 4 vouchers

Upcoming Live Online Classes

  • See More Classes

Please select a class.

Training for your Team

Length: 4 Days
  • Private Class for your Team
  • Online or On-location
  • Customizable
  • Expert Instructors

What people say about our training

This course gives a very good overview of the Spring Core and MVC frameworks. It was a good means of establishing the fundamentals for further Spring development.
Frederic van West
Choice Hotels International, Inc.
I took the Introduction to CCS class and it was just what I was looking for. Being able to ask questions and show my screen when I needed to troubleshoot was great.
Patricia Heuser
Wellspring + Stockamp
I was very pleased with the upfront enrollment, support, and communication processes. All along the way, the Webucator team made sure that I had what I needed, when I needed it. Great follow through. I will definitely consider this method of online instructor-led training again.
Susan Rodgers
AT&T
The instructor was excellent at teaching online. The entire experience was successful.
Susan Lowy
Goodwill Manasota

No cancelation for low enrollment

Certified Microsoft Partner

Registered Education Provider (R.E.P.)

GSA schedule pricing

63,660

Students who have taken Instructor-led Training

11,906

Organizations who trust Webucator for their Instructor-led training needs

100%

Satisfaction guarantee and retake option

9.29

Students rated our trainers 9.29 out of 10 based on 29,832 reviews

Contact Us or call 1-877-932-8228