ASP.NET Razor - логические условия C#

Программная логика: выполнение кода на основе условий.

If условие

C# позволяет выполнять код на основе условий.

Чтобы проверить какое-либо условие, вы можете использовать Оператор if. Оператор if возвращает true или false на основе вашего теста:

  • Оператор if запускает блок кода
  • Условие находится в скобках
  • Если условие истинно, то выполняется код в фигурных скобках

Пример

@{var price=50;}
<html>
<body>
@if (price>30)
    {
    <p>Цена слишком высока.</p>
    }
</body>
</html>

Запуск примера

Else условие

Оператор if может включать else условие.

else условие определяет код, который выполняется, когда условие установлено в false.

Пример

@{var price=20;}
<html>
<body>
@if (price>30)
  {
  <p>Цена слишком высока.</p>
  }
else
  {
  <p>Цена合适.</p>
  } 
</body>
</html>

Запуск примера

Комментарий:В данном примере, если цена не больше 30, то выполняются其余 команды.

Else If условие

можно через else if условиеТестирование нескольких условий:

Пример

@{var price=25;}
<html>
<body>
@if (price>=30)
  {
  <p>Цена слишком высока.</p>
  }
else if (price>20 && price<30) 
  {
  <p>Цена合适.</p>
  }
else
  {
  <p>Цена合适.</p>
  }    
</body>
</html>

Запуск примера

В примере выше, если первое условие true, выполняется первый блок кода.

В противном случае, если следующее условие true, выполняется второй блок кода.

Вы можете установить любое количество условий else if.

Если ни одно из условий if и else if не true, выполняется последний блок кода else.

Условия switch

Блок кода switchМожет быть использован для тестирования ряда конкретных условий:

Пример

@{
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>

Запуск примера

Тестовые значения (day) расположены в скобках. Каждое конкретное тестовое условие начинается с ключевого слова case и заканчивается точкой с запятой, за которой следуют любое количество строк кода, заканчивающихся командой break. Если тестовое значение соответствует значению case, выполняется строка кода.

Блок кода switch может устанавливать значение по умолчанию для других случаев (default:), позволяя выполнять код, когда ни один из всех случаев не является true.