How dotnet/aspnetcore works
ASP.NET Core is a modular, cross-platform framework for building web and connected applications. A representative request workflow enters through a web server, is represented as an HTTP context, and can be routed through endpoint filters to a result; the supplied excerpts directly show the filter builder invoking a request delegate and executing its return value. The tree also shows substantial MVC, identity, security, real-time, caching, and component capabilities. Many of their runtime connections are not evidenced in the excerpts, so those links are omitted rather than inferred.
Main entry points: RequestDelegateFilterPipelineBuilder.cs Endpoint filters · Http.Abstractions/src HTTP context · Servers Web servers · Routing/src Endpoint routing
Components 22
HTTP and routing
- Web servers
src/Servers - HTTP context
src/Http/Http.Abstractions/src - Endpoint routing
src/Http/Routing/src - Endpoint filters
src/Http/Routing/src/RequestDelegateFilterPipelineBuilder.cs
MVC and rendering
- MVC controllers
src/Mvc/Mvc.Core/src - Razor view engine
src/Mvc/Mvc.Razor/src/RazorViewEngine.cs - Composite view engine
src/Mvc/Mvc.ViewFeatures/src/ViewEngines/CompositeViewEngine.cs
Interactive components
- Blazor components
src/Components/Components/src - Component endpoints
src/Components/Endpoints/src - Protected browser storage
src/Components/Server/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs
Identity and security
- User management
src/Identity/Extensions.Core/src/UserManager.cs - Authentication handlers
src/Security/Authentication - Antiforgery
src/Antiforgery/src - Data protection
src/DataProtection/DataProtection/src
App services
- SignalR hubs
src/SignalR/server - Health checks
src/HealthChecks/HealthChecks/src - SQL Server cache
src/Caching/SqlServer/src - Redis cache
src/Caching/StackExchangeRedis/src - Localization
src/Localization/Localization/src - OpenAPI documents
src/OpenApi/src - Development certificates
src/Shared/CertificateGeneration/CertificateManager.cs
Other components
- Application developer
Connections 12
- Application developer → Web servers: builds on
README.md - Web servers → HTTP context: provides request
src/Http/Http.Abstractions/src/HttpContext.cs - HTTP context → Endpoint routing: routes request
src/Http/Routing/src/RequestDelegateFilterPipelineBuilder.cs - Endpoint routing → Endpoint filters: applies filters
- Endpoint filters → MVC controllers: invokes handler
- Endpoint filters → HTTP context: executes delegate
src/Http/Routing/src/RequestDelegateFilterPipelineBuilder.cs - Endpoint filters → OpenAPI documents: writes return result
src/Http/Routing/src/RequestDelegateFilterPipelineBuilder.cs - Composite view engine → Razor view engine: selects view
- Component endpoints → Blazor components: hosts components
- Protected browser storage → Data protection: protects stored data
src/Components/Server/src/ProtectedBrowserStorage/ProtectedSessionStorage.cs - User management → Authentication handlers: supports sign-in
- SignalR hubs → Redis cache: scales across nodes