ASP.NET Core Blazor 3.1/3.2: Blazor Server und Blazor WebAssembly
ASP.NET Core Blazor 3.1/3.2: Blazor Server und Blazor WebAssembly
$24.99
Minimal-Preis
$29.99
Empfohlener Preis
ASP.NET Core Blazor 3.1/3.2: Blazor Server und Blazor WebAssembly

Dieses Buch ist 100% vollständig

Abgeschlossen am 2020-02-16

Über das Buch

Dies ist die Version 2.4 des Buchs, die am 16.02.2020 im Umfang von 282 Druckseiten erschienen ist und sowohl Blazor Server 3.1 RTM als auch Blazor WebAssembly 3.2 PREVIEW behandelt.

Blazor ist die Hoffnung für alle JavaScript-Hasser: Nach dem Ende von Silverlight können .NET-Entwickler nun wieder moderne Single-Page-Web-Applications (SPA) mit .NET und C# entwickeln.

Dieses Top-aktuelle Fachbuch (Stand .NET Core-/Blazor Server-Version 3.1 und Blazor WebAssembly 3.2) unterstützt Sie nicht nur beim Einstieg in Blazor, sondern geht auch in vielen technischen Details weit über die spärliche Produktdokumentation hinaus.

Dabei werden beide Formen von Blazor gegenübergestellt: Blazor Server und Blazor Webassembly. Das Buch thematisiert ausführlich den Unterschied zwischen beiden Architekturen einschließlich Vor- und Nachteilen.

Danach behandelt das Buch alle wichtigen Programmieraufgaben für moderne Webanwendungen: Projektaufbau, Komponenten, Routing, Code-Behind, Ereignisse, Razor-Syntax, Zustandsverwaltung, Komponentenverschachtelung, Formulare/Eingabemasken, Klassenbibliotheken und Razor Class Libraries, Debugging, Dependency Injection (DI), Zugriff auf REST-Dienste, Interoperabilität mit JavaScript, Authentifizierung und Benutzerverwaltung.

Im Buch wird das praxisnahe Fallbeispiel "MiracleList" ausführlich behandelt, das es in zwei Implementierungen sowohl für Blazor Server als auch Blazor Webassembly gibt.

Über den Autor

Dr. Holger Schwichtenberg
Dr. Holger Schwichtenberg
  • Studienabschluss Diplom-Wirtschaftsinformatik an der Universität Essen
  • Promotion an der Universität Essen im Gebiet komponentenbasierter Softwareentwicklung
  • Seit 1996 selbstständig als unabhängiger Berater, Dozent, Softwarearchitekt und Fachjournalist
  • Leiter des Berater- und Dozententeams bei www.IT-Visions.de
  • Leitung der Softwareentwicklung im Bereich Microsoft / .NET bei der 5minds IT-Solutions GmbH & Co. KG (www.5minds.de)
  • Über 65 Fachbücher beim Carl Hanser Verlag, bei O'Reilly, Microsoft Press, APress und Addison-Wesley sowie mehr als 1000 Beiträge in Fachzeitschriften
  • Gutachter in den Wettbewerbsverfahren der EU gegen Microsoft (2006–2009)
  • Ständiger Mitarbeiter der Zeitschriften iX (seit 1999), dotnetpro (seit 2000) und Windows Developer (seit 2010) sowie beim Online-Portal heise.de (seit 2008).
  • Regelmäßiger Sprecher auf nationalen und internationalen Fachkonferenzen (z.B. TechEd, Microsoft IT Forum, BASTA, BASTA-on-Tour, Advanced Developers Conference, .NET-Entwicklerkonferenz, OOP, VS One, Wirtschaftsinformatik, Net.Object Days, Windows Forum, DOTNET-Konferenz, XML-in-Action)
  • Zertifikate und Auszeichnungen von Microsoft: Microsoft Most Valuable Professional (MVP) und Microsoft Certified Solution Developer (MCSD)
  • Thematische Schwerpunkte:
  1. Microsoft .NET Framework, Visual Studio, C#, Visual Basic
  2. Visual Studio, Continous Integration, Continous Delivery, Azure DevOps
  3. .NET-Architektur / Auswahl von .NET-Technologien
  4. Einführung von .NET Framework und Visual Studio / Migration auf .NET
  5. Webanwendungsentwicklung mit IIS, ASP.NET und AJAX
  6. Enterprise .NET, verteilte Systeme/Webservices mit .NET
  7. Relationale Datenbanken, XML, Datenzugriffsstrategien
  8. Objektrelationales Mapping (ORM), insbesondere Entity Framework
  9. Windows PowerShell (WPS) und Windows Management Instrumentation (WMI)
  10. Ehrenamtliche Community-Tätigkeiten:
  11. Vortragender für die International .NET Association (INETA)
  • Betrieb diverser Community-Websites www.dotnetframework.de, www.entwickler-lexikon.de, www.windows-scripting.de, www.aspnetdev.de, u.a.
  • Weblog: http://www.dotnet-doktor.de
  • Kontakt: hs@IT-Visions.de sowie Telefon 0201 649590-0

Table of Contents

1 Inhaltsverzeichnis 4 2 Vorwort 9 3 Über den Autor 11 4 Über dieses Buch 12 4.1 Versionsgeschichte dieses Buchs 12 4.2 Bezugsquelle für Aktualisierungen 14 4.3 Geplante Kapitel 14 4.4 Programmiersprache in diesem Buch 15 4.5 Notwendige Vorkenntnisse 15 4.6 Aktion "Buch für Buchrezension" 17 5 Programmcodebeispiel zum Download 19 5.1 Webadresse für Downloads 19 5.2 Übersicht über die Beispiele 19 5.3 Qualitätssicherung der Programmcodebeispiele 20 6 Was ist ASP.NET Core Blazor? 21 6.1 Blazor-Arten 21 6.2 Geschichte von Blazor 22 6.3 Support für Blazor 24 6.4 Blazor Server 24 6.4.1 Rendering und Interaktion bei Blazor Server 25 6.4.2 Netzwerkverkehr bei Blazor Server 25 6.4.3 Ressourcenbedarf und Skalierbarkeit 27 6.4.4 Vor- und Nachteile von Blazor Server 27 6.5 Blazor WebAssembly 28 6.5.1 WebAssembly (WASM) 28 6.5.2 Unterschiede zwischen Blazor Webassembly und Blazor Server 29 6.6 Einsatzreife von Blazor 31 6.7 Browserunterstützung für Blazor 31 6.8 Blazor im Vergleich anderen Spielarten von ASP.NET Core 32 6.9 Blazor im Vergleich zu anderen Webframeworks 34 7 Projektaufbau 36 7.1 Aufbau eines Blazor Server-Projekts 37 7.1.1 Ordner und Dateien 37 7.1.2 Start-Code 38 7.1.3 Struktur des Seitenaufbaus 41 7.2 Aufbau eines Blazor WebAssembly-Projekts 42 7.2.1 Start-Code im Client-Projekt 45 7.2.2 Start-Code im Server-Projekt 45 7.2.3 Übersetzung eines Blazor WebAssembly-Projekts 46 8 Komponentendateien 48 8.1 Einsatz von Razor Components 48 8.2 Namen für Komponenten 48 8.3 Ein-Datei-Komponenten 48 8.4 Komponenten mit Code-Behind-Datei 48 8.4.1 Code-Behind-Dateien auf Basis von Vererbung 49 8.4.2 Code-Behind-Dateien auf Basis von partiellen Klassen 51 8.5 Layoutseiten (Masterpages) 54 9 Routing und Navigation 56 9.1 Routendefinitionen 56 9.2 Routen mit Parametern 57 9.3 Navigation 58 9.4 Fallunterscheidung bei Mehrfachrouten 59 10 Razor-Syntax 60 11 Ereignisse 64 11.1 Komponentenlebenszyklusereignisse 64 11.2 Reaktion auf HTML-Ereignisse 65 11.3 Eigene Parameter bei HTML-Ereignissen 66 11.4 Standardparameter 66 12 Komponenteneinbettung 69 12.1 Einbetten von Razor Components 69 12.2 Parameter für eingebettete Razor Components 69 13 Zustandsverwaltung 71 13.1 Komponentenzustand 71 13.2 Testanwendung: Counter 71 13.3 Verlust des Zustandes 72 13.4 Bewahrung des Zustandes 74 13.5 Sitzungszustand 74 13.6 Generischer Sitzungszustand 75 13.7 Local Storage im Webbrowser 78 13.8 Persistierung in Datenbanken oder anderen persistenten Speichern auf dem Server 80 14 Formulare/Eingabemasken 82 14.1 Formulare auf Basis von Razor Components 82 14.1.1 Verfügbare Razor Components 82 14.1.2 Komponente 82 14.1.3 Eingabekomponenten 84 14.1.4 Datenannotationen 84 14.1.5 Validierungskomponenten in Blazor 86 14.1.6 Eigene Validierungsannotationen 86 14.1.7 Beispiel 87 14.2 Formulare auf Basis von HTML-Tags 92 15 Klassenbibliotheken und Razor Class Libraries (RCL) 96 15.1 .NET Standard 96 15.2 Referenzierbarkeit 98 15.3 Anlegen der Klassenbibliotheken 98 15.4 Einsatzgebiete der verschiedenen Klassenbibliotheksarten 100 15.5 Razor Class Libraries (RCL) 100 16 Debugging 102 17 Dependency Injection (DI) 103 17.1 Microsoft.Extensions.DependencyInjection 103 17.2 Implementierung eines Dienstes 103 17.3 Registrierung von Diensten 104 17.4 Injektion in einen Konstruktor 105 17.5 Automatisch registrierte Dienste 105 17.6 Manuelle Beschaffung 106 17.7 Injektion in eine Razor Components 106 17.8 Injezierung in Properties mit [Inject] 106 18 Zugriff auf REST-Dienste (WebAPIs) 108 18.1 WebAPI-Server 108 18.2 WebAPI-Client 110 19 Interoperabilität mit JavaScript 112 20 Serversystem- und Browserinformationen 115 20.1 HttpContext 115 20.2 Allgemeine Systeminformationen 116 21 Authentifizierung und Benutzerverwaltung 121 21.1 Verwenden von ASP.NET Identity in Blazor Server 121 21.1.1 Aktivieren der Authentifizierung in Blazor Server 121 21.1.2 Individuelle Benutzerkontenverwaltung 122 21.1.3 Anpassung der Benutzerverwaltungsseiten 124 21.2 Eigene Authentifizierungsprovider 128 21.2.1 AuthenticationStateProvider für Debugging-Zwecke 128 21.2.2 AuthenticationStateProvider in MiracleList 128 21.2.3 Nutzung des AuthenticationStateProvider 133 21.3 Zugriff auf den angemeldeten Benutzer 133 21.4 Autorisierung 134 21.4.1 Autorisierung von Komponenten 134 21.4.2 Inhalte für angemeldete Benutzer 134 21.5 Weitere Anpassung von ASP.NET Identity 134 22 Installation von Blazor-Anwendungen 135 22.1 Installation auf Azure-Dienste 135 22.2 Installationsvoraussetzungen für eigene Windows-Webserver (IIS) 135 22.3 Installation auf einem eigenen Windows-Webserver (IIS) 137 23 Fallbeispiel "MiracleList" 140 23.1 Szenario 140 23.2 Links 141 23.3 Das MiracleList-Backend 141 23.3.1 Softwarearchitektur 144 23.3.2 Entitätsklassen 147 23.3.3 Entity Framework Core-Kontextklasse 149 23.3.4 Lebensdauer der Kontextklasse in ASP.NET Core-Anwendungen 150 23.3.5 Geschäftslogik 151 23.3.6 Web API 159 23.4 MiracleList-Frontend mit Blazor Server 168 23.4.1 Projektaufbau 169 23.4.2 Startcode (Program.cs und Startup.cs) 171 23.4.3 Startseite (_Host.cshtml) 173 23.4.4 Anmeldeansicht (Login.razor) 174 23.4.5 Authentication State Provider 177 23.4.6 Hauptansicht (Index.razor) 180 23.4.7 Bearbeitungsformular (TaskEdit.razor) 184 23.5 MiracleList-Frontend mit Blazor WebAssembly 187 23.5.1 Projektaufbau 187 23.5.2 Projektdatei 189 23.5.3 Startseite mit Ladeanimation (index.html) 189 23.5.4 Blazor Webassembly-Startcode (Program.cs) 191 23.5.5 Anmeldeansicht (Login.razor) 192 23.5.6 Hauptansicht (Index.razor) 195 23.5.7 Bearbeitungsformular (TaskEdit.razor) 199 24 Umstieg von ASP.NET Webforms zu ASP.NET Core Blazor 203 24.1 Migrationspfade und Herausforderungen 203 24.2 Grundsätzliche Vorgehensweise bei der Migration 205 24.3 Umstieg von Webforms auf Blazor an einem Beispiel 206 24.4 Umstellung der Benutzerschnittstellenbeschreibung 212 24.5 Umstellung der Benutzerschnittstellensteuerung 213 25 Mobile Apps mit Mobile Blazor Bindings 215 25.1 Architektur der Mobile Blazor Bindings 215 25.2 Projekt anlegen 216 25.3 Aufbau der Projektvorlage 217 25.4 Verfügbare Steuerelemente 218 26 Quellen im Internet 220 27 Stichwortverzeichnis (Index) 221

Authors have earned$8,524,644writing, publishing and selling on Leanpub,
earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.

Erfahren Sie mehr über das Schreiben mit Leanpub

Die bedingungslose Leanpub, Kein Risiko, 100% zufrieden Garantie

Innerhalb von 45 Tagen ab Kauf kannst du dein Geld zu 100% zurückverlangen, bei jedem Leanpub-Kauf, in nur zwei Klicks. Wir bearbeiten die Erstattungen manuell, daher dauert es ein paar Tage, bis der Betrag ankommt.
Lese die kompletten Bedingungen.

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Schreiben und veröffentlichen mit Leanpub

Autoren und Verlage nutzen Leanpub, um erstaunliche Fortschritte zu veröffentlichen und ebooks zu vervollständigen. Sie können Leanpub auch schreiben, veröffentlichen und verkaufen! Leanpub ist eine leistungsstarke Plattform für ernsthafte Autoren und kombiniert einen einfachen, eleganten Schreib- und Publishing-Workflow mit einem Laden, der sich auf den Verkauf von ebooks konzentriert. Leanpub ist eine magische Schreibmaschine für Autoren: Schreiben Sie einfach in Klartext, und um Ihr ebook zu veröffentlichen, klicken Sie einfach auf eine Schaltfläche. Es ist wirklich so einfach.

Erfahren Sie mehr über das Schreiben mit Leanpub