Freigeben über


Auswählen einer ASP.NET Core-Webbenutzeroberfläche

ASP.NET Core ist ein vollständiges Benutzeroberflächenframework. Wählen Sie aus, welche Funktionen kombiniert werden sollen, die den Anforderungen der Webbenutzeroberfläche der App entsprechen.

Für die Entwicklung neuer Projekte empfehlen wir ASP.NET Core Blazor.

ASP.NET Core Blazor

Blazor ist ein Web-UI-Framework mit vollständigem Stapel, das für die meisten Szenarien mit Webbenutzeroberfläche empfohlen wird.

Vorteile der Verwendung von Blazor:

  • Wiederverwendbares Komponentenmodell
  • Effizientes Diff-basiertes Komponentenrendering
  • Rendern Sie Komponenten vom Server oder Client flexibel über WebAssembly.
  • Erstellen Sie umfangreiche interaktive Komponenten für Webbenutzeroberflächen in C#.
  • Rendern Sie Komponenten statisch vom Server.
  • Verbessern Sie schrittweise die vom Server gerenderten Komponenten für eine reibungslosere Navigation und Formularverarbeitung, und aktivieren Sie das Streamingrendering.
  • Geben Sie Code für allgemeine Logik auf dem Client und Server frei.
  • Interagieren Sie mit JavaScript.
  • Integrieren Sie Komponenten mit vorhandenen MVC-, Razor Pages- oder JavaScript-Apps.

Eine vollständige Übersicht über Blazor, die Architektur und die Vorteile finden Sie unter ASP.NET Core Blazor und ASP.NET Core Blazor-Hostingmodelle. Informationen zu den ersten Schritten mit Ihrer ersten Blazor-App finden Sie unter Erstellen Ihrer ersten Blazor-App.

ASP.NET Core Razor Pages

Razor Pages ist ein seitenbasiertes Modell zum Erstellen einer vom Server gerenderten Webbenutzeroberfläche. Razor Pages-Benutzeroberflächen werden dynamisch auf dem Server gerendert, um den HTML- und CSS-Code der Seite als Reaktion auf eine Browseranforderung zu generieren. Wenn die Seite den Client erreicht, ist sie bereit für die Anzeige. Unterstützung für Razor Pages baut auf ASP.NET Core MVC auf.

Vorteile von Razor Pages:

  • Schnelles Erstellen und Aktualisieren der Benutzeroberfläche. Der Code für die Seite verbleibt bei der Seite, während Benutzeroberflächen- und Geschäftslogikaspekte getrennt werden.
  • Kann getestet und auf große Apps skaliert werden.
  • Organisieren Sie ASP.NET Core-Seiten einfacher als ASP.NET MVC:
    • Ansichtsspezifische Logik und Ansichtsmodelle können zusammen in einem eigenen Namespace und Verzeichnis verwaltet werden.
    • Gruppen zusammengehöriger Seiten können zusammen in einem eigenen Namespace und Verzeichnis gespeichert werden.

Informationen zu den ersten Schritten mit Ihrer ersten Razor Pages-App in ASP.NET Core erhalten Sie im Tutorial: Erste Schritte mit Razor Pages in ASP.NET Core. Eine vollständige Übersicht über Razor Pages in ASP.NET Core, die zugehörige Architektur und Vorteile finden Sie in der Einführung in Razor Pages in ASP.NET Core.

ASP.NET Core MVC

ASP.NET Core MVC rendert die Benutzeroberfläche auf dem Server und verwendet ein MVC-Architekturmuster (Model-View-Controller). Das MVC-Muster unterteilt eine App in drei Hauptkomponentengruppen: Modelle, Ansichten und Controller. Benutzeranforderungen werden an einen Controller geroutet. Der Controller ist für die Arbeit mit dem Modell verantwortlich, um Benutzeraktionen durchzuführen oder Ergebnisse von Abfragen abzurufen. Der Controller wählt die Ansicht aus, die Benutzer*innen angezeigt wird, und stellt sie mit allen erforderlichen Modelldaten bereit.

Vorteile von ASP.NET Core MVC:

  • Basiert auf einem skalierbaren und ausgereiften Modell zum Erstellen großer Web-Apps.
  • Klare Separation of Concerns für maximale Flexibilität.
  • Die Model View Controller-Trennung von Zuständigkeiten stellt sicher, dass das Geschäftsmodell weiterentwickelt werden kann, ohne eng an Implementierungsdetails auf niedriger Ebene gekoppelt zu sein.

Informationen zu den ersten Schritten mit ASP.NET Core MVC finden Sie unter Erste Schritte mit ASP.NET Core MVC. Eine Übersicht über die Architektur und die Vorteile von ASP.NET Core MVC finden Sie unter Übersicht über ASP.NET Core MVC.

ASP.NET Core-SPAs (Single-Page-Webanwendungen) mit JavaScript-Front-End-Frameworks

Erstellen Sie clientseitige Logik für ASP.NET Core-Apps mit beliebten JavaScript-Frameworks, z. B. mit Angular, React oder Vue. ASP.NET Core stellt Projektvorlagen für Angular, React und Vue bereit und kann auch mit anderen JavaScript-Frameworks verwendet werden.

Vorteile von ASP.NET Core SPA mit JavaScript-Frameworks sowie die zuvor aufgeführten Vorteile des Clientrenderings:

  • Die JavaScript-Laufzeitumgebung wird bereits mit dem Browser bereitgestellt.
  • Große Community und ausgereiftes Ökosystem.
  • Erstellen Sie clientseitige Logik für ASP.NET Core-Apps mit beliebten JS-Frameworks, wie Angular, React und Vue.

Nachteile:

  • Weitere Programmiersprachen, Frameworks und Tools erforderlich.
  • Es ist schwierig, Code freizugeben, sodass ein Teil der Logik ggf. dupliziert werden muss.

Informationen zu den ersten Schritten finden Sie unter:

Kombinieren mehrerer Web-UI-Lösungen: ASP.NET Core MVC oder Razor Pages plus Blazor

MVC, Razor Seiten und Blazor sind Teil des ASP.NET Core-Frameworks und sind für die gemeinsame Verwendung konzipiert. Razor-Komponenten können in Razor Pages- und MVC-Apps integriert werden. Wenn eine Ansicht oder Seite gerendert wird, können Komponenten gleichzeitig vorab gerendert werden.

Vorteile für MVC oder Razor Seiten plus Blazor, zusätzlich zu den MVC oder Razor-Seiten Vorteilen:

  • Vorabrendering führt Razor Komponenten auf dem Server aus und rendert sie in eine Ansicht oder Seite, was die gefühlte Ladezeit der App verbessert.
  • Fügen Sie vorhandenen Ansichten oder Seiten mithilfe des Komponententag-Hilfsprogramms Interaktivität hinzu.

Informationen zu den ersten Schritten mit ASP.NET Core MVC oder Razor Pages plus Blazorfinden Sie unter Integrieren ASP.NET Kernkomponenten Razor in MVC oder Razor Pages.

Nächste Schritte

Weitere Informationen finden Sie unter

ASP.NET Core ist ein vollständiges Benutzeroberflächenframework. Wählen Sie aus, welche Funktionen kombiniert werden sollen, die den Anforderungen der Webbenutzeroberfläche der App entsprechen.

ASP.NET Core Blazor

Blazor ist ein Web-UI-Framework mit vollständigem Stapel, das für die meisten Szenarien mit Webbenutzeroberfläche empfohlen wird.

Vorteile der Verwendung von Blazor:

  • Wiederverwendbares Komponentenmodell
  • Effizientes Diff-basiertes Komponentenrendering
  • Rendern Sie Komponenten vom Server oder Client flexibel über WebAssembly.
  • Erstellen Sie umfangreiche interaktive Komponenten für Webbenutzeroberflächen in C#.
  • Rendern Sie Komponenten statisch vom Server.
  • Verbessern Sie schrittweise die vom Server gerenderten Komponenten für eine reibungslosere Navigation und Formularverarbeitung, und aktivieren Sie das Streamingrendering.
  • Geben Sie Code für allgemeine Logik auf dem Client und Server frei.
  • Interagieren Sie mit JavaScript.
  • Integrieren Sie Komponenten mit vorhandenen MVC-, Razor Pages- oder JavaScript-Apps.

Eine vollständige Übersicht über Blazor, die Architektur und die Vorteile finden Sie unter ASP.NET Core Blazor und ASP.NET Core Blazor-Hostingmodelle. Informationen zu den ersten Schritten mit Ihrer ersten Blazor-App finden Sie unter Erstellen Ihrer ersten Blazor-App.

ASP.NET Core Razor Pages

Razor Pages ist ein seitenbasiertes Modell zum Erstellen einer vom Server gerenderten Webbenutzeroberfläche. Razor Pages-Benutzeroberflächen werden dynamisch auf dem Server gerendert, um den HTML- und CSS-Code der Seite als Reaktion auf eine Browseranforderung zu generieren. Wenn die Seite den Client erreicht, ist sie bereit für die Anzeige. Unterstützung für Razor Pages baut auf ASP.NET Core MVC auf.

Vorteile von Razor Pages:

  • Schnelles Erstellen und Aktualisieren der Benutzeroberfläche. Der Code für die Seite verbleibt bei der Seite, während Benutzeroberflächen- und Geschäftslogikaspekte getrennt werden.
  • Kann getestet und auf große Apps skaliert werden.
  • Organisieren Sie ASP.NET Core-Seiten einfacher als ASP.NET MVC:
    • Ansichtsspezifische Logik und Ansichtsmodelle können zusammen in einem eigenen Namespace und Verzeichnis verwaltet werden.
    • Gruppen zusammengehöriger Seiten können zusammen in einem eigenen Namespace und Verzeichnis gespeichert werden.

Informationen zu den ersten Schritten mit Ihrer ersten Razor Pages-App in ASP.NET Core erhalten Sie im Tutorial: Erste Schritte mit Razor Pages in ASP.NET Core. Eine vollständige Übersicht über Razor Pages in ASP.NET Core, die zugehörige Architektur und Vorteile finden Sie in der Einführung in Razor Pages in ASP.NET Core.

ASP.NET Core MVC

ASP.NET Core MVC rendert die Benutzeroberfläche auf dem Server und verwendet ein MVC-Architekturmuster (Model-View-Controller). Das MVC-Muster unterteilt eine App in drei Hauptkomponentengruppen: Modelle, Ansichten und Controller. Benutzeranforderungen werden an einen Controller geroutet. Der Controller ist für die Arbeit mit dem Modell verantwortlich, um Benutzeraktionen durchzuführen oder Ergebnisse von Abfragen abzurufen. Der Controller wählt die Ansicht aus, die Benutzer*innen angezeigt wird, und stellt sie mit allen erforderlichen Modelldaten bereit.

Vorteile von ASP.NET Core MVC:

  • Basiert auf einem skalierbaren und ausgereiften Modell zum Erstellen großer Web-Apps.
  • Klare Separation of Concerns für maximale Flexibilität.
  • Die Model View Controller-Trennung von Zuständigkeiten stellt sicher, dass das Geschäftsmodell weiterentwickelt werden kann, ohne eng an Implementierungsdetails auf niedriger Ebene gekoppelt zu sein.

Informationen zu den ersten Schritten mit ASP.NET Core MVC finden Sie unter Erste Schritte mit ASP.NET Core MVC. Eine Übersicht über die Architektur und die Vorteile von ASP.NET Core MVC finden Sie unter Übersicht über ASP.NET Core MVC.

ASP.NET Core-SPAs (Single-Page-Webanwendungen) mit JavaScript-Front-End-Frameworks

Erstellen Sie clientseitige Logik für ASP.NET Core-Apps mit beliebten JavaScript-Frameworks, z. B. mit Angular, React oder Vue. ASP.NET Core stellt Projektvorlagen für Angular, React und Vue bereit und kann auch mit anderen JavaScript-Frameworks verwendet werden.

Vorteile von ASP.NET Core SPA mit JavaScript-Frameworks sowie die zuvor aufgeführten Vorteile des Clientrenderings:

  • Die JavaScript-Laufzeitumgebung wird bereits mit dem Browser bereitgestellt.
  • Große Community und ausgereiftes Ökosystem.
  • Erstellen Sie clientseitige Logik für ASP.NET Core-Apps mit beliebten JS-Frameworks, wie Angular, React und Vue.

Nachteile:

  • Weitere Programmiersprachen, Frameworks und Tools erforderlich.
  • Es ist schwierig, Code freizugeben, sodass ein Teil der Logik ggf. dupliziert werden muss.

Informationen zu den ersten Schritten finden Sie unter:

Auswählen einer Hybridlösung: ASP.NET Core MVC oder Razor Seiten plus Blazor

MVC, Razor Seiten und Blazor sind Teil des ASP.NET Core-Frameworks und sind für die gemeinsame Verwendung konzipiert. Razor-Komponenten können in Razor Pages- und MVC-Apps integriert werden. Wenn eine Ansicht oder Seite gerendert wird, können Komponenten gleichzeitig vorab gerendert werden.

Vorteile für MVC oder Razor Seiten plus Blazor, zusätzlich zu den MVC oder Razor-Seiten Vorteilen:

  • Vorabrendering führt Razor Komponenten auf dem Server aus und rendert sie in eine Ansicht oder Seite, was die gefühlte Ladezeit der App verbessert.
  • Fügen Sie vorhandenen Ansichten oder Seiten mithilfe des Komponententag-Hilfsprogramms Interaktivität hinzu.

Informationen zu den ersten Schritten mit ASP.NET Core MVC oder Razor Pages plus Blazorfinden Sie unter Integrieren ASP.NET Kernkomponenten Razor in MVC oder Razor Pages.

Nächste Schritte

Weitere Informationen finden Sie unter