Verstehen, wann und warum Razor Pages zum Einsatz kommen
In dieser Lerneinheit erfahren Sie, wann und warum Razor Pages in Ihrer ASP.NET Core-App zum Einsatz kommen.
Vorteile von Razor Pages
Razor Pages ist ein serverseitiges, seitenbasiertes Programmiermodell zum Entwickeln von Webbenutzeroberflächen mit ASP.NET Core. Dies hat unter anderem folgende Vorteile:
- Einfache Einrichtung für dynamische Web-Apps mit HTML, CSS und C#
- Organisieren von Dateien nach Feature zur einfacheren Wartung
- Kombinieren von Markup mit serverseitigem C#-Code mithilfe der Razor-Syntax
Razor Pages verwendet Razor, um serverbasierten Code in Webseiten einzubetten. Die Razor-Syntax kombiniert HTML und C#, um die dynamische Renderinglogik zu definieren. Dies bedeutet, dass Sie C#-Variablen und Methoden in Ihrem HTML-Markup verwenden können, um zur Laufzeit dynamische Webinhalte auf dem Server zu generieren. Es ist wichtig zu verstehen, dass Razor Pages kein Ersatz für HTML, CSS oder JavaScript ist, sondern diese Technologien kombiniert, um dynamische Webinhalte zu erstellen.
Separation of Concerns
Razor Pages erzwingt die Trennung der Zuständigkeiten mit der C#-Klasse PageModel
, sodass Dateneigenschaften und Logikvorgänge gekapselt werden, die auf die Razor-Seite begrenzt sind, und Seitenhandler für HTTP-Anforderungen definiert werden. Die PageModel
-Klasse ist eine partielle Klasse, die automatisch von der ASP.NET Core-Projektvorlage generiert wird. Die PageModel
-Klasse befindet sich im Pages
-Ordner und ist nach der Razor-Seite benannt. Die PageModel
-Klasse für die Razor-Seite Index.cshtml
wird beispielsweise IndexModel.cs
genannt.
Gründe für den Einsatz von Razor Pages
Verwenden Sie für Ihre ASP.NET Core-App in den folgenden Situationen Razor Pages:
- Sie möchten dynamische Webbenutzeroberflächen generieren.
- Sie bevorzugen einen seitenorientierten Ansatz.
- Sie möchten die Duplizierung mit Teilansichten reduzieren.
Razor Pages vereinfacht die ASP.NET Core-Seitenorganisation, indem verknüpfte Seiten und ihre Logik in ihrem eigenen Namespace und Verzeichnis verwaltet werden.
Hinweis
ASP.NET Core unterstützt auch das MVC-Muster (Model View Controller) zum Erstellen von Web-Apps. Verwenden Sie MVC, wenn Sie eine klare Trennung zwischen Modell, Ansicht und Controller bevorzugen. Razor Pages und MVC können zusammen in einer App verwendet werden. MVC wird im Rahmen dieses Moduls nicht behandelt.
In der nächsten Lerneinheit erfahren Sie mehr über die Razor Pages-App.