Einführung in Blazor WebAssembly

Classroom Schulung | Deutsch | Anspruch

Schulungsdauer: 3 Tage

Ziele

In dieser Schulung "Einführung in Blazor WebAssembly" lernen Sie, wie man UI-Apps erstellt, die selben komponenten basierte Pattern verwenden, die von Bibliotheken wie Angular und React populär gemacht wurden, jedoch unter Verwendung von C#-Programmierung. Sie lernen, wie sie unabhängiger von JavaScript-UI-Bibliotheken und -Frameworks entwickeln und JavaScript nur bei Bedarf und nicht als Grundlage ihrer clientseitigen Anwendungen verwenden. In diesem Kurs wird auch ein ASP.NET Core-Backend verwendet.

Der Kurs wird mit der aktuellen Version durchgeführt, andere Versionen sind nach Absprache möglich.

Zielgruppe

  • Entwickler

Voraussetzungen

Erfahrung in:

C# Programmierung, HTML, CSS und JavaScript Programmierung

Agenda

Überblick und Einführung

  • Was ist Blazor?
  • Blazor-Hosting-Modelle
  • Was ist WebAssembly?
  • Unteschied Blazor Server versus Blazor WebAssembly?
  • Browser-Kompatibilität
  • Web-Versammlung vs. JavaScript
  • Wie wird .NET Core / C# in einem Webbrowser ausgeführt?

Blazor WebAssembly-Anwendung

  • Projekt-Vorlage
  • Neue Anwendung erstellen
  • Hosten von Blazor WebAssembly mit einem ASP.NET Core MVC-Server
  • Konfiguration
  • Abhängigkeits-Injektion
  • Umgebungen
  • Protokollierung
  • Behandlung von Fehlern
  • Debugging WebAssembly

Razor Komponenten und Datenbindung

  • Was ist eine Komponente?
  • Ein Datenmodell erstellen
  • Bindung des Datenmodells an das HTML
  • Beliebige Attribute übergeben
  • Behandlung von Ereignissen
  • Manuelle Auslösung von Zustandsaktualisierungen und Re-Rendering

Komponieren von Razorkomponenten

  • Zerlegen einer Komponente in kleinere Komponenten
  • Einseitige Datenbindung
  • Zwei-Wege-Datenbindung
  • Daten von einer Elternkomponente an eine Unterkomponente mit Hilfe von Parametern übergeben
  • Übergeben von Daten von einer untergeordneten Komponente an eine übergeordnete Komponente unter Verwendung von Ereignis-Rückrufen
  • Verwenden Sie Tasten zur Leistungsoptimierung
  • Verwenden Sie Refs für den Zugriff auf DOM-Elemente
  • Bibliotheken für Razor-Komponenten
  • Design Pattern für Razor-Komponenten
    • Parameter sind unveränderlich
    • Zustand aufheben
    • Verwaltung von Zuständen

Forms für Razor-Komponenten

  • Was ist der Zweck von Forms?
  • Sammeln von Daten mit einem Form, Input, Select und Textarea Element
  • Form Element Zwei-Daten-Bindung
  • Forms mit der Blazor Edit Form Razor-Komponente erstellen
  • Konzept des Bearbeitungskontextes
  • Spezielle Steuerelemente zum Bearbeiten von Formularen
    • Input Text
    • Input TextArea
    • Input Select
    • Input Number
    • Input Checkbox
    • Input Date
  • Validierung auf das Formular anwenden
  • View Model mit Validierungsattributen gestalten
  • Code Benutzerdefinierte Validierungsattribute

Razor Component Pages

  • Was ist das Page Model?
  • Unterschiede zwischen Razor Pages und Razor Components
  • Verwenden einer Razor-Components Page
  • Router-Komponente
  • Konfigurieren des Page-Routing
  • Route zu Komponenten aus mehreren Baugruppen
  • Route Parameter verwenden
  • Querystring verwenden
  • Autorisierung einer Razor-Page
  • Verwendung der Autorisierung innerhalb des Component Tree

Server-Daten verwenden

  • ASP.NET Core MVC Web API
  • Was ist ASP.NET Core MVC?
  • Was ist eine REST-API?
  • Was ist ein API-Controller?
  • Injizieren des Http-Clients
  • Untersuchung des Http-Clients
  • Aufrufen einer REST-API von einer Blazor-Komponente über den HttpClient

Interagieren mit JavaScript

  • Was ist die JavaScript-Interop?
  • Wann wird JavaScript benötigt?
  • Synchrone vs. Asynchrone Calls
  • So rufen Sie eine JavaScript-Funktion von einer Komponente auf
  • Wie rufe ich C#-Code aus JavaScript auf?
  • Aufruf statischer Methoden
  • Aufruf von Instanzmethoden
  • Organisieren von JavaScript-Code innerhalb einer Blazor WebAssembly-App
  • Erkunden Sie das JavaScript-Ökosystem
    • Clientseitige Bibliotheken
    • NPM & Garn
    • Webpack
    • Nützliche Bibliotheken

Unit Testing

  • Was sind Unit-Tests?
  • Grundsätze von Unit-Tests
    • Definieren von einer Unit
    • Setup/Teardown
    • Isoliertes-Testing
    • Definieren, was zu testen ist
    • Code-Abdeckung
    • Test-Frameworks
    • Stubs, Mocks und Spies
  • xUnit
    • Was ist xUnit?
    • Test-Framework
    • Fakten vs. Theorie
    • Assertions
    • Integration in Visual Studio
  • Razor-Komponenten
    • Was sollte an einer Razorkomponente getestet werden?
    • Was ist bUnit?
    • Verwendung von bUnit mit xUnit
    • Setup von getesteten Komponenten in C#- oder Razor-Syntax
    • Verifizieren von Seitenausgaben mit semantischem HTML vergleich
    • Mit Komponenten interagieren und untersuchen
    • Event handler auslösen
    • Bereitstellen von kaskadierenden Werten
    • Inject services
    • Mock IJs-Laufzeit
    • Durchführen von Snapshot-Tests

Ziele

In dieser Schulung "Einführung in Blazor WebAssembly" lernen Sie, wie man UI-Apps erstellt, die selben komponenten basierte Pattern verwenden, die von Bibliotheken wie Angular und React populär gemacht wurden, jedoch unter Verwendung von C#-Programmierung. Sie lernen, wie sie unabhängiger von JavaScript-UI-Bibliotheken und -Frameworks entwickeln und JavaScript nur bei Bedarf und nicht als Grundlage ihrer clientseitigen Anwendungen verwenden. In diesem Kurs wird auch ein ASP.NET Core-Backend verwendet.

Der Kurs wird mit der aktuellen Version durchgeführt, andere Versionen sind nach Absprache möglich.

Zielgruppe

  • Entwickler

Voraussetzungen

Erfahrung in:

C# Programmierung, HTML, CSS und JavaScript Programmierung

Agenda

Überblick und Einführung

  • Was ist Blazor?
  • Blazor-Hosting-Modelle
  • Was ist WebAssembly?
  • Unteschied Blazor Server versus Blazor WebAssembly?
  • Browser-Kompatibilität
  • Web-Versammlung vs. JavaScript
  • Wie wird .NET Core / C# in einem Webbrowser ausgeführt?

Blazor WebAssembly-Anwendung

  • Projekt-Vorlage
  • Neue Anwendung erstellen
  • Hosten von Blazor WebAssembly mit einem ASP.NET Core MVC-Server
  • Konfiguration
  • Abhängigkeits-Injektion
  • Umgebungen
  • Protokollierung
  • Behandlung von Fehlern
  • Debugging WebAssembly

Razor Komponenten und Datenbindung

  • Was ist eine Komponente?
  • Ein Datenmodell erstellen
  • Bindung des Datenmodells an das HTML
  • Beliebige Attribute übergeben
  • Behandlung von Ereignissen
  • Manuelle Auslösung von Zustandsaktualisierungen und Re-Rendering

Komponieren von Razorkomponenten

  • Zerlegen einer Komponente in kleinere Komponenten
  • Einseitige Datenbindung
  • Zwei-Wege-Datenbindung
  • Daten von einer Elternkomponente an eine Unterkomponente mit Hilfe von Parametern übergeben
  • Übergeben von Daten von einer untergeordneten Komponente an eine übergeordnete Komponente unter Verwendung von Ereignis-Rückrufen
  • Verwenden Sie Tasten zur Leistungsoptimierung
  • Verwenden Sie Refs für den Zugriff auf DOM-Elemente
  • Bibliotheken für Razor-Komponenten
  • Design Pattern für Razor-Komponenten
    • Parameter sind unveränderlich
    • Zustand aufheben
    • Verwaltung von Zuständen

Forms für Razor-Komponenten

  • Was ist der Zweck von Forms?
  • Sammeln von Daten mit einem Form, Input, Select und Textarea Element
  • Form Element Zwei-Daten-Bindung
  • Forms mit der Blazor Edit Form Razor-Komponente erstellen
  • Konzept des Bearbeitungskontextes
  • Spezielle Steuerelemente zum Bearbeiten von Formularen
    • Input Text
    • Input TextArea
    • Input Select
    • Input Number
    • Input Checkbox
    • Input Date
  • Validierung auf das Formular anwenden
  • View Model mit Validierungsattributen gestalten
  • Code Benutzerdefinierte Validierungsattribute

Razor Component Pages

  • Was ist das Page Model?
  • Unterschiede zwischen Razor Pages und Razor Components
  • Verwenden einer Razor-Components Page
  • Router-Komponente
  • Konfigurieren des Page-Routing
  • Route zu Komponenten aus mehreren Baugruppen
  • Route Parameter verwenden
  • Querystring verwenden
  • Autorisierung einer Razor-Page
  • Verwendung der Autorisierung innerhalb des Component Tree

Server-Daten verwenden

  • ASP.NET Core MVC Web API
  • Was ist ASP.NET Core MVC?
  • Was ist eine REST-API?
  • Was ist ein API-Controller?
  • Injizieren des Http-Clients
  • Untersuchung des Http-Clients
  • Aufrufen einer REST-API von einer Blazor-Komponente über den HttpClient

Interagieren mit JavaScript

  • Was ist die JavaScript-Interop?
  • Wann wird JavaScript benötigt?
  • Synchrone vs. Asynchrone Calls
  • So rufen Sie eine JavaScript-Funktion von einer Komponente auf
  • Wie rufe ich C#-Code aus JavaScript auf?
  • Aufruf statischer Methoden
  • Aufruf von Instanzmethoden
  • Organisieren von JavaScript-Code innerhalb einer Blazor WebAssembly-App
  • Erkunden Sie das JavaScript-Ökosystem
    • Clientseitige Bibliotheken
    • NPM & Garn
    • Webpack
    • Nützliche Bibliotheken

Unit Testing

  • Was sind Unit-Tests?
  • Grundsätze von Unit-Tests
    • Definieren von einer Unit
    • Setup/Teardown
    • Isoliertes-Testing
    • Definieren, was zu testen ist
    • Code-Abdeckung
    • Test-Frameworks
    • Stubs, Mocks und Spies
  • xUnit
    • Was ist xUnit?
    • Test-Framework
    • Fakten vs. Theorie
    • Assertions
    • Integration in Visual Studio
  • Razor-Komponenten
    • Was sollte an einer Razorkomponente getestet werden?
    • Was ist bUnit?
    • Verwendung von bUnit mit xUnit
    • Setup von getesteten Komponenten in C#- oder Razor-Syntax
    • Verifizieren von Seitenausgaben mit semantischem HTML vergleich
    • Mit Komponenten interagieren und untersuchen
    • Event handler auslösen
    • Bereitstellen von kaskadierenden Werten
    • Inject services
    • Mock IJs-Laufzeit
    • Durchführen von Snapshot-Tests

Tags

Diese Seite weiterempfehlen