Heim > Artikel > Backend-Entwicklung > Teilen Sie ASP.NET-Studiennotizen (13) Detaillierte Erläuterung der Razor-Syntax
ASP.NET Razor – C#- und VB-Codesyntax
Razor unterstützt sowohl C# (Cis) als auch VB (Visual Basic).
Hauptsyntaxregeln für Razor C#
Razor-Codeblöcke sind in @{...} eingeschlossen
Inline-Ausdrücke (Variablen und Funktionen) beginnen mit @
Codeanweisungen enden mit Semikolons
Variablen werden mit dem Schlüsselwort var deklariert
Strings werden in Anführungszeichen gesetzt
C#-Code unterscheidet zwischen Groß- und Kleinschreibung
Die Erweiterung für C#-Dateien sind .cshtml
C#-Beispiele
<!-- Single statement block -->@{ var myMessage = "Hello World"; }<!-- Inline expression or variable --><p>The value of myMessage is: @myMessage</p> <!-- Multi-statement block -->@{var greeting = "Welcome to our site!";var weekDay = DateTime.Now.DayOfWeek;var greetingMessage = greeting + " Here in Huston it is: " + weekDay;}<p>The greeting is: @greetingMessage</p>
Hauptsyntaxregeln für Razor VB
Razor-Codeblöcke sind in @Code enthalten .. Im Endcode
Inline-Ausdrücke (Variablen und Funktionen) beginnen mit @
Variablen werden mit dem Dim-Schlüsselwort deklariert
Strings werden in Anführungszeichen gesetzt
Bei VB-Code wird die Groß-/Kleinschreibung nicht berücksichtigt sensibel
Die Erweiterung für VB-Dateien ist .vbhtml
Beispiel
<!-- Single statement block --> @Code dim myMessage = "Hello World" End Code<!-- Inline expression or variable --> <p>The value of myMessage is: @myMessage</p> <!-- Multi-statement block --> @Codedim greeting = "Welcome to our site!" dim weekDay = DateTime.Now.DayOfWeek dim greetingMessage = greeting & " Here in Huston it is: " & weekDayEnd Code <p>The greeting is: @greetingMessage</p>
Wie funktioniert es?
Razor ist eine einfache Programmiersyntax zum Einbetten von Servercode in Webseiten.
Die Razor-Syntax basiert auf dem ASP.NET Framework , einem Teil des Microsoft.NET Frameworks, das speziell für die Erstellung von Webanwendungen entwickelt wurde.
Die Razor-Syntax unterstützt alle ASP.NET-Funktionen, verwendet jedoch eine vereinfachte Syntax, die für Anfänger einfacher zu erlernen und für Experten effizienter ist.
Eine Razor-Webseite kann als HTML-Webseite mit zwei Arten von Inhalten beschrieben werden: HTML-Inhalt und Razor-Code.
Wenn der Server die Seite liest, führt er zunächst den Razor-Code aus, bevor er die HTML-Seite an den Browser sendet. Auf dem Server ausgeführter Code kann Aufgaben ausführen, die im Browser nicht ausgeführt werden können, beispielsweise der Zugriff auf die Serverdatenbank. Servercode kann dynamische HTML-Inhalte erstellen und an den Browser senden. Aus Browsersicht unterscheidet sich der vom Servercode generierte HTML-Code nicht vom HTML-Inhalt von statisch.
ASP.NET-Webseiten mit Razor-Syntax haben spezielle Dateierweiterungen cshtml (Razor C#) oder vbhtml (Razor VB).
Verwendung von Objekten
Server-Codierung beinhaltet oft Objekte.
Das „Date“-Objekt ist ein typisches integriertes ASP.NET-Objekt, aber das Objekt kann auch ein benutzerdefiniertes Objekt, eine Webseite, ein Textfeld, eine Datei, ein Datenbankeintrag usw. sein.
Nützliche Objekte Ein Datenbankeintrag könnte eine „Speichern“-Methode haben, ein Bildobjekt könnte eine „Rotieren“-Methode haben, ein E-Mail-Objekt könnte eine „Senden“-Methode haben und so weiter.
Objekte haben auch Eigenschaften, die ihre Eigenschaften beschreiben. Ein Datenbankeintrag kann die Eigenschaften FirstName und LastName haben.
ASP.NET-Datumsobjekte haben eine Now-Eigenschaft (geschrieben als Date.Now) und die Now-Eigenschaft hat eine Day-Eigenschaft (geschrieben als Date.Now.Day). Das folgende Beispiel zeigt, wie auf einige Eigenschaften des Datenobjekts zugegriffen wird:
Instanz
<table border="1"><tr><th width="100px">Name</th><td width="100px">Value</td></tr><tr><td>Day</td><td>@DateTime.Now.Day</td></tr><tr><td>Hour</td><td>@DateTime.Now.Hour</td></tr><tr><td>Minute</td><td>@DateTime.Now.Minute</td></tr><tr><td>Second</td><td>@DateTime.Now.Second</td></tr></td></table>
If und ElseBedingungen
von Dynamische Webseiten Eine wichtige Funktion besteht darin, dass Sie anhand der Bedingungen entscheiden können, was zu tun ist.
Eine übliche Methode hierfür ist die Verwendung einer if ... else-Anweisung:
Beispiel
@{var txt = "";if(DateTime.Now.Hour > 12){txt = "Good Evening";}else{txt = "Good Morning";}}<html><body><p>The message is @txt</p></body></html>
读取用户输入
动态网页的另一个重要特点是,您可以读取用户输入。
输入是通过请求[]功能读取的,并且传送输入数据是经过IsPost条件判断的:
实例
@{var totalMessage = "";if(IsPost){var num1 = Request["text1"];var num2 = Request["text2"];var total = num1.AsInt() + num2.AsInt();totalMessage = "Total = " + total;}}<html><body style="background-color: beige; font-family: Verdana, Arial;"><form action="" method="post"><p><label for="text1">First Number:</label><br><input type="text" name="text1" /></p><p><label for="text2">Second Number:</label><br><input type="text" name="text2" /></p><p><input type="submit" value=" Add " /></p></form><p>@totalMessage</p></body></html>
【相关推荐】
2. 分享ASP.NET学习笔记(1)--WebPages Razor
3. 分享ASP.NET学习笔记(2)--WebPages 介绍
4. 分享ASP.NET学习笔记(3)WebPages 布局
6. 分享ASP.NET学习笔记(5)全局页面 AppStart 和 PageStart
Das obige ist der detaillierte Inhalt vonTeilen Sie ASP.NET-Studiennotizen (13) Detaillierte Erläuterung der Razor-Syntax. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!