Syntaxe du rasoir
ASP.NET Razor - Syntaxe du code C# et VB
Razor prend en charge à la fois C# (C Sharp) et VB (Visual Basic).
Règles de syntaxe principales de Razor C#
- Blocs de code Razor entourés de @{ ... }
- Les expressions en ligne (variables et fonctions) commencent par @
- Les instructions de code se terminent par un point-virgule
- Les variables sont déclarées à l'aide du mot-clé var
- Les chaînes sont placées entre guillemets
- Le code C# est sensible à la taille L'extension de l'écriture de
Le fichier C# est .cshtml
Exemple
<html> <body> <!-- 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> </body> </html>
Exécuter l'instance»
Cliquez sur le bouton « Exécuter l'instance » pour afficher l'instance en ligne
Règles de syntaxe principales de Razor VB
- Blocs de code Razor sont enfermés dans @Code ... End Code
- Les expressions en ligne (variables et fonctions) commencent par @
- Les variables sont déclarées à l'aide du mot-clé Dim
- Les chaînes sont déclarées à l'aide de Surrounded par guillemets
- Le code VB n'est pas sensible à la casse
- L'extension des fichiers VB est .vbhtml
Exemple
<!-- 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 --> @Code dim greeting = "Welcome to our site!" dim weekDay = DateTime.Now.DayOfWeek dim greetingMessage = greeting & " Here in Huston it is: " & weekDay End Code <p>The greeting is: @greetingMessage</p>
Exécuter l'instance»
Cliquez sur le bouton "Exécuter l'instance" pour afficher l'instance en ligne
Comment ça marche ?
Razor est une syntaxe de programmation simple pour intégrer le code du serveur dans les pages Web.
La syntaxe Razor est basée sur le framework ASP.NET, une partie du framework Microsoft .NET spécialement conçue pour la création d'applications Web.
La syntaxe Razor prend en charge toutes les fonctionnalités d'ASP.NET, mais utilise une syntaxe simplifiée, plus facile à apprendre pour les débutants et plus efficace pour les experts.
Les pages Web Razor peuvent être décrites comme des pages Web HTML avec les deux types de contenu suivants : Contenu HTML et code Razor.
Lorsque le serveur lit la page, il exécute d'abord le code Razor avant d'envoyer la page HTML au navigateur. Le code exécuté sur le serveur peut effectuer des tâches qui ne peuvent pas être effectuées sur le navigateur, telles que l'accès à la base de données du serveur. Le code serveur peut créer du contenu HTML dynamique et l'envoyer au navigateur. Du point de vue du navigateur, le HTML généré par le code du serveur n'est pas différent du contenu HTML statique.
Les pages Web ASP.NET avec la syntaxe Razor ont des extensions de fichier spéciales cshtml (Razor C#) ou vbhtml (Razor VB).
Utiliser des objets
Le codage serveur implique souvent des objets.
L'objet "Date" est un objet ASP.NET intégré typique, mais l'objet peut également être un objet personnalisé, une page Web, une zone de texte, un fichier, un enregistrement de base de données, etc.
les objets ont des méthodes d'exécution. Un enregistrement de base de données peut avoir une méthode « Enregistrer », un objet image peut avoir une méthode « Rotate », un objet de courrier électronique peut avoir une méthode « Envoyer », etc.
Les objets ont également des propriétés qui décrivent leurs caractéristiques. Un enregistrement de base de données peut avoir les propriétés FirstName et LastName.
L'objet ASP.NET Date a une propriété Now (écrite comme Date.Now) et la propriété Now a une propriété Day (écrite comme Date.Now.Day). L'exemple suivant montre comment accéder à certaines propriétés de l'objet Data :
Instance
<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>
Exécuter l'instance»
Cliquez sur Bouton "Exécuter" Exemple "pour afficher des exemples en ligne
Conditions If et Else
Une caractéristique importante des pages Web dynamiques est que vous pouvez décider quoi faire en fonction des conditions.
Une façon courante de procéder consiste à utiliser une instruction if ... else :
Instance
@{ var txt = ""; if(DateTime.Now.Hour > 12) {txt = "Good Evening";} else {txt = "Good Morning";} } <html> <body> <p>The message is @txt</p> </body> </html>
Exécuter l'instance »
Cliquez sur le bouton « Exécuter l'instance » pour afficher l'instance en ligne
Lire les entrées de l'utilisateur
Une autre fonctionnalité importante des pages Web dynamiques est que vous pouvez lire Obtenir la saisie de l'utilisateur.
L'entrée est lue via la fonction Request[] et les données d'entrée sont transmises via la condition IsPost :
Instance
@{ var totalMessage = ""; if(IsPost) { var num1 = Request["text1"]; var num2 = Request["text2"]; var total = num1.AsInt() + num2.AsInt(); totalMessage = "Total = " + total; } } <!DOCTYPE html> <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>
Exécuter l'instance »
Cliquez sur le bouton « Exécuter l'instance » pour afficher l'instance en ligne