ASP.NET Core is part of modern .NET and is the foundation for building modern web applications. In this workshop you will learn ASP.NET Core and Blazor — from server-side rendering and interactive components to authentication, data access, and deployment.
Programming Web Applications using ASP.NET Core with Blazor
Duration: 5 days
Course Overview
ASP.NET Core 10 is the modern, cross-platform web framework for .NET 10 (Windows, macOS, Linux). This course teaches how to build high-performance web applications and services using Minimal APIs, MVC, Razor Pages, and a strong emphasis on Blazor (Server, WebAssembly, and Hybrid). You’ll also work with real-time communication via SignalR and deploy to Azure using Kestrel or reverse proxies.
Target Audience
Professional developers familiar with .NET and C# who want to build modern web apps with ASP.NET Core and Blazor.
Prerequisites
- Experience writing C# programs (see course: Programming C#)
- Familiarity with Visual Studio or VS Code
- Basic knowledge of HTML/CSS/JavaScript is helpful
Detailed Topics
- Introduction to ASP.NET Core 10 and the hosting model
- Configuration via JSON, environment variables, user secrets, Key Vault
- Project structure, SDK-style projects, and dependency management
- Dependency Injection: built-in container, scopes, options, and customizations
- Static files, routing, endpoint routing
- Minimal APIs: request handling, filters, validation
- Razor Pages and MVC: models, controllers, views, partials, view components, tag helpers
- Blazor focus:
- Blazor Server, Blazor WebAssembly, and Blazor Hybrid
- Components, routing, layouts, cascading parameters
- Forms, validation, event handling, data binding
- Reusable components, libraries, JS interop
- Server-side rendering (SSR) and interactive server-side rendering (Blazor United-style scenarios)
- Performance, pre-rendering, streaming rendering
- Authentication/authorization with Blazor
- Razor Components (shared UI between MVC/Razor Pages/Blazor)
- Model binding and validation
- Data access with EF Core: DbContext lifetimes, migrations, minimal API + Blazor data patterns
- Authentication and authorization: Entra ID/OpenID Connect, policies, roles, claims; rate limiting
- Real-time communication with SignalR; integrating with Blazor components
- Client-side assets, bundling, and static web assets
- Logging, health checks, and diagnostics
- Configuration for environments: Development, Staging, Production
- Hosting and deployment: Kestrel behind reverse proxies (IIS/Apache/Nginx), Azure App Service/Container Apps
Hands-on Labs
- Build a Minimal API backend and expose endpoints for a Blazor front end
- Create a Blazor Server app with authentication and component-based UI
- Build a Blazor WebAssembly or Hybrid app consuming secured APIs
- Add server-side rendering/pre-rendering to improve perceived performance
- Integrate EF Core for data access and demonstrate validation/binding
- Implement real-time updates with SignalR and display in Blazor components
- Configure logging, health checks, and environment-based settings; deploy to Azure