Web-API-Entwicklung mit ASP.NET Core 6
Classroom Schulung | Deutsch | Anspruch
Schulungsdauer: 4 Tage
Ziele
In dieser ASP.NET Core 6-Schulung lernen die Teilnehmer, wie sie leistungsstarke, sichere und gut architektierte REST-APIs entwerfen und erstellen, die von einer Vielzahl von Clients genutzt werden können. Dieser Kurs konzentriert sich speziell auf APIs und deckt keine Web-UI-Themen wie Views und Razor Pages ab. Eine Einführung in Blazor ist enthalten.
Ziel:
- Verstehen der Ziele und Vorteile von ASP.NET Core 6.0
- Lernen Sie, gute Entscheidungen über die Applikations-Architektur und die data access Technologien zu treffen
- Verwendung des Routing-Systems von ASP.NET, um eine REST-ähnliche Architektur zu entwickeln.
- Erfahrungen beim Aufbau eines Service sammeln, der Daten über eine moderne Web-API zur Verfügung stellt
- Lernen Sie Best Practices für den Einsatz von Unit-Tests, Logging und Error-Handling,
- Verschiedene Authentifizierungsmöglichkeiten zur Absicherung einer Web-API kennenlernen
- Sie erhalten eine Einführung in Blazor und gRPC
- Verständnis der verschiedenen plattformübergreifenden Bereitstellungsoptionen, einschließlich Docker-Containern
Zielgruppe
.NET-Entwickler
Voraussetzungen
- Erfahrung in der Entwicklung webbasierter Anwendungen mit C#
- Erfahrung mit HTML, CSS und JavaScript
Agenda
Einführung
- Entwicklung von .NET und .NET Core
- .NET SKDs und Runtimes
- Visual Studio und Visual Studio Code
.NET 6.0 SDK
- Die Installation
- Versionsverwaltung
- Befehlszeilenschnittstelle (CLI)
Was ist neu in C#
- Datensatz-Typen
- Init Only Setters (nur Setzer)
- Nullbare Referenztypen
ASP.NET Core-Anwendungsarchitektur
- NuGet-Pakete
- Starten der Anwendung
- Hosting-Umgebungen
- Middleware und die Anforderungspipeline
- Services und Dependency Injection
Anwendungskonfiguration
- Konfigurieren und ConfigureServices
- Konfigurationsanbieter und Quellen
- Konfigurations-API
- Options-Pattern
- HTTPS und HTTP/2
Request-Routing
- RESTful Services
- Endpoint-Routing
- Routen-Vorlagen
- Routing-Einschränkungen
- Vorrang von Routenvorlagen
- Attribut-basiertes Routing
Modelle
- Persistenz Ignoranz
- Invertierung von Abhängigkeiten
- Asynchroner Datenzugriff
- Objekt-Relationales Mapping
- Entity Framework Core
- Dapper ORM
Controllers
- Responsibilities
- Requirements und Conventions
- Abhängigkeiten
- Action Results
- ApiController-Attribut
Web-APIs
- API-Controllers
- Minimale APIs
- OpenAPI/Swagger
- Testen von APIs
- CRUD-Operationen
- Patch-Requests
- Microservice-Architektur
- API-Gateway-Pattern
- Ursprungsübergreifende Ressourcenfreigabe (CORS)
Datenüberprüfung
- Einführung
- Daten Annotationen
- Modell-Bindung
Fehlerbehandlung
- Best Practices
- HTTP Error Status Codes
- Developer Exception Page
Logging
- Konfiguration
- ILogger
- Serilog und Seq
Testing
- Unit Testing
- xUnit
- Testen von Controllern
- Integrationstests
Security
- Authentifizierung
- ASP. NET Identity
- Autorisierung
- Web-API-Authentifizierung
- JSON-Web-Token (JWT)
- OAuth 2.0 und OpenID Connect
- Secrets Management
Remote Procedure Calls (gRPC)
- Einführung
- Protobuf
- Server
- Client
- Beschränkungen
Blazor
- Razor-Komponenten
- Blazor-Server
- Blazor WebAssembly
Bereitstellung
- dotnet veröffentlichen
- Kestrel
- IIS
- Docker
Ziele
In dieser ASP.NET Core 6-Schulung lernen die Teilnehmer, wie sie leistungsstarke, sichere und gut architektierte REST-APIs entwerfen und erstellen, die von einer Vielzahl von Clients genutzt werden können. Dieser Kurs konzentriert sich speziell auf APIs und deckt keine Web-UI-Themen wie Views und Razor Pages ab. Eine Einführung in Blazor ist enthalten.
Ziel:
- Verstehen der Ziele und Vorteile von ASP.NET Core 6.0
- Lernen Sie, gute Entscheidungen über die Applikations-Architektur und die data access Technologien zu treffen
- Verwendung des Routing-Systems von ASP.NET, um eine REST-ähnliche Architektur zu entwickeln.
- Erfahrungen beim Aufbau eines Service sammeln, der Daten über eine moderne Web-API zur Verfügung stellt
- Lernen Sie Best Practices für den Einsatz von Unit-Tests, Logging und Error-Handling,
- Verschiedene Authentifizierungsmöglichkeiten zur Absicherung einer Web-API kennenlernen
- Sie erhalten eine Einführung in Blazor und gRPC
- Verständnis der verschiedenen plattformübergreifenden Bereitstellungsoptionen, einschließlich Docker-Containern
Zielgruppe
.NET-Entwickler
Voraussetzungen
- Erfahrung in der Entwicklung webbasierter Anwendungen mit C#
- Erfahrung mit HTML, CSS und JavaScript
Agenda
Einführung
- Entwicklung von .NET und .NET Core
- .NET SKDs und Runtimes
- Visual Studio und Visual Studio Code
.NET 6.0 SDK
- Die Installation
- Versionsverwaltung
- Befehlszeilenschnittstelle (CLI)
Was ist neu in C#
- Datensatz-Typen
- Init Only Setters (nur Setzer)
- Nullbare Referenztypen
ASP.NET Core-Anwendungsarchitektur
- NuGet-Pakete
- Starten der Anwendung
- Hosting-Umgebungen
- Middleware und die Anforderungspipeline
- Services und Dependency Injection
Anwendungskonfiguration
- Konfigurieren und ConfigureServices
- Konfigurationsanbieter und Quellen
- Konfigurations-API
- Options-Pattern
- HTTPS und HTTP/2
Request-Routing
- RESTful Services
- Endpoint-Routing
- Routen-Vorlagen
- Routing-Einschränkungen
- Vorrang von Routenvorlagen
- Attribut-basiertes Routing
Modelle
- Persistenz Ignoranz
- Invertierung von Abhängigkeiten
- Asynchroner Datenzugriff
- Objekt-Relationales Mapping
- Entity Framework Core
- Dapper ORM
Controllers
- Responsibilities
- Requirements und Conventions
- Abhängigkeiten
- Action Results
- ApiController-Attribut
Web-APIs
- API-Controllers
- Minimale APIs
- OpenAPI/Swagger
- Testen von APIs
- CRUD-Operationen
- Patch-Requests
- Microservice-Architektur
- API-Gateway-Pattern
- Ursprungsübergreifende Ressourcenfreigabe (CORS)
Datenüberprüfung
- Einführung
- Daten Annotationen
- Modell-Bindung
Fehlerbehandlung
- Best Practices
- HTTP Error Status Codes
- Developer Exception Page
Logging
- Konfiguration
- ILogger
- Serilog und Seq
Testing
- Unit Testing
- xUnit
- Testen von Controllern
- Integrationstests
Security
- Authentifizierung
- ASP. NET Identity
- Autorisierung
- Web-API-Authentifizierung
- JSON-Web-Token (JWT)
- OAuth 2.0 und OpenID Connect
- Secrets Management
Remote Procedure Calls (gRPC)
- Einführung
- Protobuf
- Server
- Client
- Beschränkungen
Blazor
- Razor-Komponenten
- Blazor-Server
- Blazor WebAssembly
Bereitstellung
- dotnet veröffentlichen
- Kestrel
- IIS
- Docker