Razor поддерживает как C # (C sharp) и VB (Visual Basic) .
Основные Razor Синтаксические правила для C #
- Razor кодовые блоки заключены в @ {...}
- Встроенные выражения (variables and functions) начинаются с @
- утверждения кода заканчиваются точкой с запятой
- Переменные объявляются с помощью ключевого слова вара
- Строки заключаются в кавычки
- C # код чувствителен к регистру
- C # файлы имеют расширение .cshtml
C # Пример
<!-- 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>
Выполнить пример » Главная Razor Правила синтаксиса для VB
- Razor кодовые блоки заключены в @code ... Конец кода
- Встроенные выражения (variables and functions) начинаются с @
- Переменные объявляются с помощью ключевого слова Dim
- Строки заключаются в кавычки
- VB код не чувствительны к регистру
- VB-файлы имеют расширение .vbhtml
пример
<!-- 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>
Выполнить пример » Как это работает?
Razor является простое программирование синтаксис для встраивания серверного кода на веб - страницах.
Razor синтаксис основан на фреймворке ASP.NET, в рамках Структуры Microsoft.NET , который специально предназначен для создания веб - приложений.
Razor синтаксис дает вам всю мощь ASP.NET, но использует упрощенный синтаксис , который легче учиться , если вы новичок, и делает вас более продуктивным , если вы эксперт.
Razor веб - страницы могут быть описаны как HTML - страницы с двумя типами контента: контент HTML и Razor кода.
Когда сервер читает страницу, он запускает Razor код первой, прежде чем он отправляет страницу HTML в браузере. Код, который выполняется на сервере, может выполнять задачи, которые не могут быть сделаны в браузере, например, доступ к базе данных сервера. Серверный код может создать динамический контент HTML на лету, прежде чем он будет отправлен в браузер. При осмотре браузер, HTML генерируется код сервера не отличается от статического контента HTML.
ASP.NET веб - страниц с Razor синтаксиса имеют специальное расширение файла cshtml ( Razor using C#) с ( Razor using VB) ( Razor using C#) или vbhtml ( Razor using VB) с ( Razor using VB) .
Работа с объектами
кодирование сервера часто включает в себя объекты.
"DateTime" объект представляет собой типичный встроенный объект ASP.NET, но объекты могут быть самостоятельно определены, веб - страницы, текстовое поле, файл, запись базы данных и т.д.
Объекты могут иметь методы, которые они могут выполнять. Запись в базе данных может иметь "Save" метод, объект изображения может быть "Rotate" метод, объект электронной почты может иметь "Send" метод, и так далее.
Объекты также обладают свойствами, которые описывают их характеристики. Запись в базе данных может иметь ПгвЬЫат и свойство LastName (amongst others) .
Объект ASP.NET DateTime имеет сейчас свойство (written as DateTime.Now) в (written as DateTime.Now.Day) (written as DateTime.Now) , а свойство теперь имеет свойство Day (written as DateTime.Now.Day) . В приведенном ниже примере показано, как получить доступ к некоторым свойствам объекта DateTime:
пример
<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>
Выполнить пример » Если и Else условия
Важной особенностью динамических веб-страниц, что вы можете определить, что делать в зависимости от условий.
Обычный способ сделать это с IF ... ELSE заявления:
пример
@{
var txt = "";
if(DateTime.Now.Hour > 12)
{txt = "Good Evening";}
else
{txt = "Good Morning";}
}
<html>
<body>
<p>The message is @txt </p>
</body>
</html>
Выполнить пример » Чтение пользовательского ввода
Еще одной важной особенностью динамических веб-страниц, которые вы можете прочитать пользовательский ввод.
Ввод читается запрос [] функции, и размещение (input) проверяется условие 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>
Выполнить пример »