ASP.NET Core MVC – Model-View-Controller
Die moderne Art der Webentwicklung mit ASP.NET
Das ASP.NET Core Framework ermöglicht die Erstellung moderner, cloudbasierter Anwendungen. Die überarbeitete Architektur des Nachfolgers von ASP.NET bietet die ideale Grundlage für modulare, plattformunabhängige Anwendungen. Durch das Model-View-Controller-Architekturschema kann eine Webanwendung in die Hauptkomponenten Modell, Ansicht und Controller unterteilt und diese wiederum leichter schnittstellenbasiert entwickelt werden.
Der Verzicht auf Ansichtszustände und serverbasierte Formulare ermöglicht die präzise Steuerung des Anwendungsverhaltens. Durch den Einsatz der Routinginfrastruktur in Verbindung mit dem Front Controller-Schema werden Anfragen durch einen Controller verarbeitet, ein Verfahren, das selbst bei komplexen Webanwendungen Übersichtlichkeit gewährleistet.
Grundlagen
- Das Model-View-Controller-Prinzip
- Abgrenzung zu ASP.NET MVC und Blazor
- Zustandslose Softwareentwicklung
- Dependency Injection
- Minimal API
Oberflächengestaltung
- ViewEngines
- Partial Views
- View Components
- Layouts
- Razor Views / Razor Pages
- Lokalisierung
- Tag-Helper
- Bootstrap und jQuery
Geschäftslogik
- Controller
- Validierung
- Actions, ActionResult und ActionFilter
- Fehlerbehandlung
- Testing
Datenhaltung
- Models
- ViewModels
- Einführung in Entity Framework Core
- Dapper ORM
Services
- SOAP
- RESTful APIs
- OpenAPI / Swagger-UI
- gRPC
- SignalR
Bereitstellung
- Selfhosting
- IIS
- Container (Docker / Kubernetes)
- Azure WebApps
Middleware
- Caching
- Eingriffe in die Request-Pipeline
- ModelBinder
Sicherheit
- Authentifizierung / Autorisierung
- OAuth2 und OpenID Connect
- JSON Web Token
- TLS-Integration
Blazor Framework
- Blazor Server
- Blazor WebAssembly (SOA)
- Blazor Hybrid
- UI-Komponenten u. a. MudBlazor
Praxistipps und -tricks
- Tooling mit Visual Studio und Visual Studio Code
- Testautomatisierung
- Routing im Detail
- Absichern der Anwendung gegen Cross-Site-Scripting sowie Cross-Site-Request-Forgery Attacken
- MetaPack
- API – Dokumentation
- HTTP/2 und HTTP/3