cshtml

Was ist eine CSHTML-Datei?

Eine CSHTML-Datei ist eine C#-HTML-Webseitendatei, die serverseitig von Razor-Markup-Engine verwendet wird. Dabei handelt es sich um eine ASP.NET-View-Engine, die Webseiten generiert.

Sie ähnelt einer standardmäßigen ASP.NET-Webseite (.ASP- oder .ASPX-Datei), verwendet aber eine etwas andere Syntax.

Was genau ist die CSHTML-Datei?

Eine CSHTML-Datei ist vereinfacht gesagt eine Variante einer HTML-Datei für Webseiten in der Programmiersprache C#.

Sie ist allerdings keine klassisches HTML-Datei. Stattdessen fungiert sie eben als C#-Datei, die HTML generiert. Der Server führt den serverseitigen Code innerhalb der Seite aus, bevor er die generierte Seite an den Browser sendet. Man kann also in seiner vertrauten Programmiersprache bleiben und – viel wichtiger – mit anderen C#-Anwendungen zusammenarbeiten.

CS kann man sich dabei als Abkürzung für C-Sharp merken („Sharp“ ist das # in C#).

Viele Online-Dienste, wie zum Beispiel Online-Plattformen für Umfragen, verwenden diese Dateien für Webformulare, damit Sie etwa Daten über einen Webbrowser senden können.

Was ist eine CSHTML Datei?
Im Gegensatz zu HTML wird CSHTML via C# programmiert

Wofür wird eine CSHTML-Datei benötigt?

Zu den häufigsten Einsatzgebieten solcher Dateien gehören unter anderem:

  • Daten an Webdienste senden
  • Webformulare erstellen und auswerten
  • Komplexe Informationen verarbeiten und bereitstellen

Diese Dateien können sowohl in C# als auch in VB.NET programmiert werden.

Das Dateiformat findet darüber hinaus dann einen Einsatz, um HTML für Tabellen, Bilder und andere Formatierungsfunktionen zu generieren. Bei der Erstellung von Tabellen können Sie entweder eine Tabellensyntax oder eine HTML-Syntax nutzen.

Unterschied CSHTML- und HTML-Datei

Es gibt ein paar Unterschiede zwischen beiden Dateiformaten. Einer der offensichtlichsten Unterschiede ist die Dateierweiterung: Die einen verwenden die Erweiterung .CSHTML, während die anderen die Erweiterung .HTML verwenden. Hier gibt es keine Ausnahmen.

Der wesentliche Unterschied liegt aber natürlich in Syntax und Funktion: Während HTML-Dateien vom W3C standardisiert sind, liegt die Weiterentwicklung von C# und damit auch von CSHTML allein bei Microsoft.

Der Code ist auch nicht beliebig austauschbar ist, lediglich Teile von HTML funktionieren auch in CSHTML. Umgekehrt wird CSHTML-Code in HTML bzw. auf einem normalen Server lediglich Fehler auslösen.

C#-Code für eine Razor-Webseite
C#-Code für eine Razor-Webseite (Quelle: Microsoft Learn)
CSHTML-Datei
CSHTML-Datei (Quelle: Microsoft Learn)

Beschränkungen

Ein Razor-Server zeigt das generierte HTML in der Regel nur einmal für einen bestimmten Benutzer an. Der Grund dafür ist, dass sie nicht von einem Client-Webbrowser zwischengespeichert werden kann und soll. 

Zudem ist es nicht möglich, das Format zu nutzen, um Echtzeitdaten anzuzeigen – dazu zählen zum Beispiel Daten aus einer Datenbank oder von einem Webdienst.

Titelbild: ultramcu, stock.adobe.com



FavoriteLoading Tipp meinen Favoriten hinzufügen (setzt Cookie, mehr unter Datenschutz)