ASP.NET Core 5.0 Development

  • Course number: NET-310
  • Duration: 4 days

ASP.NET Core 5 is the latest release of Microsoft’s cross-platform version of its ASP.NET Web development framework. This ASP.NET Core 5 Development training introduces attendees to ASP.NET Core development and teaches the skills necessary to design and build well-architected web and service-oriented applications that follow the MVC design pattern. This course does introduce new frameworks like gRPC and Blazor but does not include in-depth coverage of those topics.

Each student receives a printed copy of all the material presented by the instructor.

Each student receives a lab manual consisting of a series of hands-on lab exercises that take students through the building of a data-driven 3-tier ASP.NET Core application.

The instructor receives a electronic version of the material suitable for presentation during class and a guide with recommended timing and additional information related to the hands-on lab exercises.

Prior .NET experience and basic skills with HTML and JavaScript is assumed.

ASP.NET 5 SDK (5.0.101 or later)

Visual Studio 2019 (any edition) with Update 16.8 (or later)

Postman application (www.getpostman.com)

Lab file bundle provided with the course

  • Introduction
    • Evolution of .NET and .NET Core
    • .NET SDKs and Runtimes
    • Visual Studio and Visual Studio Code
  • .NET Core SDK
    • Installation
    • Version Management
    • Command-Line Interface (CLI)
  • What's New in C# 9
    • Introduction
    • Record Types
    • Init Only Setters
    • Nullable Reference Types
  • ASP.NET Core Application Architecture
    • NuGet Packages
    • Application Startup
    • Hosting Environments
    • Middleware and the Request Pipeline
    • Services and Dependency Injection
    • MVC vs. Razor Pages
  • Application Configuration
    • Configure and ConfigureServices
    • Configuration Providers and Sources
    • Configuration API
    • Options Pattern
    • HTTPS and HTTP/2
  • Request Routing
    • RESTful Services
    • Endpoint Routing
    • Route Templates
    • Route Constraints
    • Attribute-Based Routing
  • Models
    • Persistence Ignorance
    • Object-Relational Mapping
    • Entity Framework (EF) Core
    • Dapper ORM
  • Controllers
    • Responsibilities
    • Requirements and Conventions
    • Dependencies
    • Action Results
  • Views
    • Responsibilities
    • Conventions
    • Razor Syntax
    • Layouts
    • ViewData and ViewBag
    • Strongly-Typed Views
    • Partial Views
    • HTML and URL Helpers
    • Tag Helpers
    • View Components
    • Client-Side Dependencies
    • Razor Pages
    • View Models
  • HTML Forms
    • Form Tag Helper
    • Input Tag Helper
    • Select Tag Helper
    • Form Submissions
    • Model Binding
  • Data Validation
    • Introduction
    • Data Annotations
    • Model Binding
    • Input Tag Helpers
    • Validation Tag Helpers
  • Application State
    • Client-Side vs Server-Side
    • HttpContext.Items
    • Session State
    • TempData
  • Error Handling
    • Best Practices
    • HTTP Error Status Codes
    • Status Code Pages
    • Developer Exception Page
  • Logging
    • Configuration
    • ILogger
    • Serilog and Seq
  • Testing
    • Unit Testing
    • xUnit
    • Testing Controllers
    • Integration Testing
  • Authentication
    • ASP.NET Core Identity
    • Cookie Middleware
    • Authorization
    • Claims-Based Authorization
  • Web APIs
    • API Controllers
    • Testing APIs
    • CRUD Operations
    • OpenAPI (Swagger)
    • Cross-Origin Resource Sharing (CORS)
  • Remote Procedure Calls (gRPC)
    • Introduction
    • Protobuf
    • Server
    • Client
    • Limitations
  • Blazor
    • Razor Components
    • Blazor Server
    • Blazor WebAssembly
  • Deployment
    • dotnet publish
    • Kestrel
    • IIS
    • Docker
  • Conclusion