Microsoft Blazor 20.10.2020, 11:36 Uhr

Dynamische Webseiten mit Blazor aufbauen

Der australische Software-Entwickler euklad demonstriert in zwei ausführlichen CodeProject-Beiträgen, wie man dynamischen Content mit Microsoft Blazor generieren kann.
(Quelle: codeproject.com)
Was passiert, wenn Sie während der Entwicklungszeit noch nicht wissen, wie Ihre Webseite aussehen soll, beispielsweise weil deren Controls abhängig sein sollen von den anzuzeigenden Daten, und diese Daten vom Benutzer oder einem Administrator dynamisch geändert werden können? Sie müssen Ihre Seite dynamisch generieren. Das kann man beispielsweise mit JavaScript und den zahllosen Frameworks dafür tun. Entwickler euklad und die Firma Pro Coders für die er arbeitet sind allerdings keine Freunde von JavaScript. Deshalb benutzen Sie Blazor seit der ersten Vorschauversion und haben damit viele erstaunliche Dinge ausprobiert, hauptsächlich mit Blazor Server-Side, das auf SignalR aufbaut.
Für seine Beispielanwendung verwendet er Blazor UI Razor-Seiten - eine Technologie, die es seit rund fünf Jahren gibt. Dass der Leser den Umgang mit Razor bereits kennt, setzt er für seine Beispiele voraus.
Das erste Beispiel sind Content-Management-Systeme, bei denen der Site-Administrator frei entscheiden kann, welche Felder von einem Benutzer auf der Benutzerprofilseite ausgefüllt werden können. euklad formuliert seine User Story so:
  • Generieren einer UI-Seite auf der Grundlage einer von einem Dienst erhaltenen Control List.
  • Support für zwei Arten von Controls: TextEdit und DateEdit.
  • Die Control-Liste enthält Eigenschaften für die UI-Generierung: Etikett, Typ, Requiered.
Anhand einer Schritt-für-Schritt-Anleitung zeigt er in seinem CodeProject-Beitrag, wie man diese Anforderung mit Visual Studio 2019 in Form einer Blazor-App umsetzt. Den kompletten Code seiner Lösung hat er auf seiner GitHub-Seite veröffentlicht.
In einem zweiten Beitrag erläutert euklad wie man eine eine extern erweiterbare dynamische Seite erstellt, die es erlaubt zusätzliche Steuerelemente später über eine separate Assembly zur dynamischen Seite hinzuzufügen – und zwar ohne Neukompilierung. Siehe hier.


Das könnte Sie auch interessieren