ASP.NET Razor — логические условия C#
Логика программирования: выполнение кода на основе условий.
Если условие
C# позволяет выполнять код на основе условий.
Чтобы проверить условие, вы используете оператор if . Оператор if возвращает true или false в зависимости от вашего теста:
- Оператор if запускает блок кода
- Условие написано внутри скобок
- Код внутри фигурных скобок выполняется, если тест верен
Пример
@{var
price=50;}
<html>
<body>
@if (price>30)
{
<p>The price is too high.</p>
}
</body>
</html>
Другое условие
Оператор if может включать условие else .
Условие else определяет код, который будет выполняться, если условие ложно.
Пример
@{var
price=20;}
<html>
<body>
@if (price>30)
{
<p>The price is too high.</p>
}
else
{
<p>The price is OK.</p>
}
</body>
</html>
Примечание. В приведенном выше примере, если первое условие истинно, оно будет выполнено. Условие else охватывает «все остальное».
Другое условие
Несколько условий можно проверить с помощью условия else if :
Пример
@{var
price=25;}
<html>
<body>
@if (price>=30)
{
<p>The price is
high.</p>
}
else if (price>20 && price<30)
{
<p>The price is OK.</p>
}
else
{
<p>The price is low.</p>
}
</body>
</html>
В приведенном выше примере, если первое условие истинно, оно будет выполнено.
Если нет, то если следующее условие истинно, это условие будет выполнено.
У вас может быть любое количество else if условий.
Если ни одно из условий if и else if не выполняется, последний блок else (без условия) покрывает «все остальное».
Условия переключения
Блок переключателей можно использовать для проверки ряда отдельных условий:
Пример
@{
var weekday=DateTime.Now.DayOfWeek;
var day=weekday.ToString();
var message="";
}
<html>
<body>
@switch(day)
{
case "Monday":
message="This is the first weekday.";
break;
case
"Thursday":
message="Only one day before weekend.";
break;
case "Friday":
message="Tomorrow is
weekend!";
break;
default:
message="Today is " + day;
break;
}
<p>@message</p>
</body>
</html>
Значение теста (день) указано в скобках. Каждое отдельное тестовое условие имеет значение case, которое заканчивается двоеточием, и любое количество строк кода, заканчивающихся оператором break. Если тестовое значение соответствует значению case, строки кода выполняются.
Блок переключателя может иметь случай по умолчанию (default:) для «всего остального», который выполняется, если ни один из случаев не является истинным.