ASP.NET Razor - циклы и массивы C#
Операторы в цикле будут выполняться повторно.
Цикл For
Если вам нужно повторно выполнять одни и те же операторы, можно организовать цикл.
Если вы знаете, сколько раз нужно выполнить цикл, можно использоватьцикл for. Этот тип цикла особенно полезен при счёте вверх или вниз:
Пример
<body>
@for(var i = 10; i < 21; i++)
{<p>Строка @i</p>}
</body>
</html>
Запустить пример »
Цикл For Each
Если вы работаете с коллекциями или массивами, вы часто будете использоватьцикл for each。
Коллекция — это группа похожих объектов. Цикл for each может перебирать коллекцию, пока она не завершится.
В приведённом ниже примере выполняется перебор коллекции ASP.NET Request.ServerVariables.
Пример
<body>
<ul>
@foreach (var x in Request.ServerVariables)
{<li>@x</li>}
</ul>
</body>
</html>
Запустить пример »
Цикл while
Цикл while— это универсальный цикл.
Цикл while начинается с ключевого слова while, за которым следуют круглые скобки, внутри которых можно указать, как долго будет продолжаться цикл, а затем блок кода, который выполняется повторно.
Цикл while обычно задаёт увеличивающуюся или уменьшающуюся переменную для подсчёта.
В примере ниже оператор += добавляет 1 к значению переменной i при каждом выполнении цикла.
Пример
<body>
@{
var i = 0;
while (i < 5)
{
i += 1;
<p>Строка @i</p>
}
}
</body>
</html>
Запустить пример »
Массивы
Когда нужно хранить несколько похожих переменных, но не хотите создавать отдельную переменную для каждой из них, можно использовать массив для их хранения:
Пример
string[] members = {"Jani", "Hege", "Kai", "Jim"};
int i = Array.IndexOf(members, "Kai")+1;
int len = members.Length;
string x = members[2-1];
}
<html>
<body>
<h3>Участники</h3>
@foreach (var person in members)
{
<p>@person</p>
}
<p>Количество имён в Members равно @len</p>
<p>Человек на позиции 2 — @x</p>
<p>Kai теперь на позиции @i</p>
</body>
</html>
Запустить пример »
Другие расширения