Web-API-Entwicklung mit ASP.NET Core 7
Classroom Schulung | Deutsch | Anspruch
Schulungsdauer: 4 Tage
Ziele
In dieser ASP.NET Core 7-Schulung erwerben die Teilnehmer die Fähigkeit, leistungsstarke, sichere und gut strukturierte REST-APIs zu entwerfen und zu erstellen, die von einer Vielzahl von Clients genutzt werden können. Der Kurs legt dabei einen besonderen Fokus auf APIs und behandelt keine Themen im Bereich Web-UI, wie Views und Razor Pages. Eine Einführung in Blazor ist ebenfalls enthalten.
Ziel des Kurses ist es, ein Verständnis für die Ziele und Vorteile von ASP.NET Core 7.0 zu entwickeln, fundierte Entscheidungen zur Applikationsarchitektur und den verwendeten Datenzugriffstechnologien zu treffen sowie das Routing-System von ASP.NET zur Entwicklung einer REST-ähnlichen Architektur effektiv einzusetzen. Die Teilnehmer sammeln Erfahrungen beim Aufbau eines Services, der Daten über eine moderne Web-API bereitstellt, und lernen bewährte Methoden im Bereich Unit-Tests, Logging und Error-Handling kennen. Der Kurs vermittelt zudem verschiedene Authentifizierungsmöglichkeiten zur Sicherung einer Web-API und gibt eine Einführung in Blazor und gRPC. Ein weiterer Schwerpunkt liegt auf dem Verständnis unterschiedlicher plattformübergreifender 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 7.0 SDK
- Die Installation
- Versionsverwaltung
- Befehlszeilenschnittstelle (CLI)
Neuerungen in .NET 7
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 7-Schulung erwerben die Teilnehmer die Fähigkeit, leistungsstarke, sichere und gut strukturierte REST-APIs zu entwerfen und zu erstellen, die von einer Vielzahl von Clients genutzt werden können. Der Kurs legt dabei einen besonderen Fokus auf APIs und behandelt keine Themen im Bereich Web-UI, wie Views und Razor Pages. Eine Einführung in Blazor ist ebenfalls enthalten.
Ziel des Kurses ist es, ein Verständnis für die Ziele und Vorteile von ASP.NET Core 7.0 zu entwickeln, fundierte Entscheidungen zur Applikationsarchitektur und den verwendeten Datenzugriffstechnologien zu treffen sowie das Routing-System von ASP.NET zur Entwicklung einer REST-ähnlichen Architektur effektiv einzusetzen. Die Teilnehmer sammeln Erfahrungen beim Aufbau eines Services, der Daten über eine moderne Web-API bereitstellt, und lernen bewährte Methoden im Bereich Unit-Tests, Logging und Error-Handling kennen. Der Kurs vermittelt zudem verschiedene Authentifizierungsmöglichkeiten zur Sicherung einer Web-API und gibt eine Einführung in Blazor und gRPC. Ein weiterer Schwerpunkt liegt auf dem Verständnis unterschiedlicher plattformübergreifender 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 7.0 SDK
- Die Installation
- Versionsverwaltung
- Befehlszeilenschnittstelle (CLI)
Neuerungen in .NET 7
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