Blazor Server Kompaktkurs

Seminarinformationen

Seminar - Ziel

In dieser 3-tägigen Schulung "Blazor Server Kompaktkurs" lernen Sie, wie Sie UI-Apps mit denselben komponentenbasierten Mustern erstellen, die von Bibliotheken wie Angular und React populär gemacht wurden, nur eben mit C#. Die Teilnehmer lernen auch die serverseitige Codierung mit ASP.NET Core Web APIs und SignalR, um Daten für ihre Blazor WebAssembly-Anwendungen bereitzustellen.

Teilnehmer - Zielgruppe

  • Entwickler aus dem .NET Bereich

Kurs - Voraussetzungen

  • Erfahrung in C#
  • HTML-, CSS- und JavaScript-Entwicklungserfahrung
  • Erfahrung in ASP.NET Core

Seminardauer

  • 3 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

Einführung

  • Was ist Blazor?
  • Blazor-Hosting-Modelle
  • Blazor Server vs. Blazor WebAssembly?
  • Server-Model
    • Server-Model vs. JavaScript
    • UI-Server-Ausführung und Web-Sockets
    • Skalierbarkeit und Deployment
  • WebAssembly Model
    • Was ist WebAssembly?
    • Browser-Kompatibilität
    • Web Assembly Model vs. JavaScript
    • Wie läuft .NET Core / C# in einem Webbrowser?
    • Skalierbarkeit und Deployment


Blazor Server-Anwendung

  • Projekt-Vorlage
  • Anwendung erstellen
  • Blazor Server hosten
  • Konfiguration
  • Injektion von Abhängigkeiten
  • Umgebungen
  • Logging
  • Fehlerbehandlung
  • Fehlersuche


Razor-Komponenten und Datenbindung

  • Was ist eine Komponente?
  • Erstellen eines Datenmodells
  • Binden des Datenmodells an das HTML
  • Übergabe beliebiger Attribute
  • Events verarbeiten
  • Manuelles Auslösen von Status-Updates und Re-Rendering
  • Razor-Komponenten zusammensetzen
  • Zerlegen einer Komponente in kleinere Komponenten
  • Einseitige Datenanbindung
  • Zwei-Wege-Datenbindung
  • Übergabe von Daten von einer übergeordneten Komponente an eine untergeordnete Komponente über Parameter
  • Übergabe von Daten von einer Child-Komponente an eine Parent-Komponente mit Hilfe von Event-Callbacks
  • Verwendung von Schlüsseln zur Optimierung der Leistung
  • Verwendung von Refs für den Zugriff auf DOM-Elemente
  • Razor-Komponentenbibliotheken
  • Entwurfsmuster für Razor-Komponenten
    • Parameter sind unveränderlich
    • Zustand aufheben
    • Zustand verwalten


Razor-Komponenten-Formulare

  • Was ist der Zweck eines Formulars?
  • Sammeln von Daten mit einem Formular, Eingabe-, Auswahl- und Textarea-Elementen
  • Erkunden Sie das Formular-Element Zwei-Daten-Bindung
  • Formulare mit der Blazor Edit Form Razor Component erstellen
  • Das Konzept des Bearbeitungskontextes kennenlernen
  • Verwendung der spezialisierten Edit Form Controls
    • Eingabe von Text
    • Eingabe TextArea
    • Eingabe Auswahl
    • Eingabe Nummer
    • Eingabe Checkbox
    • Eingabe Datum
  • Validierung auf das Formular anwenden
  • Ausschmücken des Ansichtsmodells mit Validierungsattributen
  • Benutzerdefinierte Validierungsattribute codieren


Razor-Komponentenseiten

  • Was ist das Seitenmodell?
  • Unterschiede zwischen Razor Pages und Razor Components
  • Verwendung einer Razor-Komponente als Seite
  • Untersuchen der Router-Komponente
  • Konfigurieren des Seiten-Routings
  • Routen zu Komponenten aus mehreren Assemblies
  • Verwenden von Routing-Parametern
  • Verwenden der Abfragezeichenfolge
  • Anwenden der Autorisierung auf eine Razor-Komponentenseite
  • Verwenden der Autorisierung innerhalb des Komponentenbaums


Blazorise

  • Was ist Blazorise?
  • Konfigurieren von Blazorise für Blazor Server
  • CSS für Blazorise konfigurieren
  • Blazorise Theming
  • Komponenten
  • Forms
  • DataGrid


Server-Daten verwenden

  • Verbindung zu SQL Server mit EF Core
  • EF Core in einer Blazor Server-Anwendung verwenden


Security und Identity

  • Vergleich der Authentifizierung zwischen Blazor Server und ASP.NET Core
  • Vergleich der Autorisierung zwischen Blazor Server und ASP.NET Core
  • Anmeldeformular in Blazor Server implementieren
  • Integration mit ASP.NET Core's HttpContext.User
  • Handhabung der Autorisierung in Blazor Server
  • Threat Mitigation (Bedrohungsabwehr)


Interagieren mit JavaScript

  • Was ist die JavaScript-Interop?
  • Wann wird JavaScript benötigt?
  • Synchrone vs. Asynchrone Aufrufe
  • JavaScript Funktion aus einer Komponente aufrufen
  • C#-Code von JavaScript aus aufrufen
  • Aufruf von statischen Methoden
  • Aufruf von Instanzmethoden
  • Organisieren von JavaScript-Code innerhalb einer Blazor Server App
  • JavaScript-Ökosystem erforschen
    • Clientseitige Bibliotheken
    • NPM und Yarn
    • Webpack
    • Nützliche Bibliotheken


Unit-Tests

  • Was ist Unit-Testing?
  • Prinzipien des Unit-Testens
    • Definieren einer Unit
    • Aufbau/Abbau
    • Testen in Isolation
    • Festlegen, was getestet werden soll
    • Code-Abdeckung
    • Test-Frameworks
    • Stubs, Mocks und Spione
  • xUnit
    • Was ist xUnit?
    • Test-Framework
    • Fakten vs. Theorie
    • Assertions
    • Integration mit Visual Studio
  • Razor-Komponenten
    • Was sollte bei einer Razor-Komponente getestet werden?
    • Was ist bUnit?
    • Verwendung von bUnit mit xUnit
    • Einrichten und Definieren von Komponenten unter Tests in C# oder Razor-Syntax
    • Überprüfen des Ergebnisses mit semantischem HTML-Vergleicher
    • Mit Komponenten interagieren und diese inspizieren
    • Auslösen von Event-Handlern
    • Kaskadierte Werte bereitstellen
    • Dienste einbinden
    • IJsRuntime mocken
    • Snapshot-Tests durchführen


Blazor-Web-Assembly-Demo

  • Ein Blazor-Web-Assembly-Projekt erstellen
  • Blazor Web Assembly mit Blazor Server vergleichen/gegenüberstellen
  • Erkunden der Web Assembly und ASP.NET Core Server Architektur
  • Demonstrieren, wie eine Komponente aus dem Blazor Server-Projekt mit dem Blazor Web Assembly-Projekt verwendet werden kann

Weitere Schulungen zu Thema Microsoft .NET

C#/.net Framework Schnelleinstieg

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In diesem Seminar erlernen Sie die grundlegenden Kenntnisse und Fertigkeiten, um sich mit der Programmiersprache C# innerhalb der .NET Platform bewegen zu können. Die Inhalte werden mit vielen praktischen Übungen vertieft.

C#/.net Framework für Einsteiger

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

Diese Seminar dient als Einstieg in die C# Programmierung im Kontext einer .NET Platform. Sie erlernen die grundlegenden Kenntnisse und Fertigkeiten, die es Ihnen ermöglichen sich mittels C#-Programmierung in einer .NET Umgebung zu bewegen. Die Inhalte des Kurses werden durch ...

Datenbankprogrammierung von Visual Basic .NET

- u.a. in Leipzig, Nürnberg, Essen, Heidelberg, Virtual Classroom

Die Zugriffsmöglichkeiten auf unterschiedliche Datenbank-Server und der Datenzugriff mit ADO bilden die Schwerpunkte dieses Seminars.

Einführung in die ASP.NET Core-Entwicklung mit React und Redux

- u.a. in Frankfurt am Main, Hannover, Stuttgart, Leipzig, Virtual Classroom

In dieser 5-tägigen Schulung "Einführung in die ASP.NET Core-Entwicklung mit React und Redux" lernen Sie die notwendigen Kenntnisse, um eine moderne Webanwendung zu erstellen, die auf JavaScript auf der Client-Seite und ASP.NET Core im Backend basiert. Sie erwerben ...