ASP.NET Razor - Циклы и массивы в C#
- Предыдущая страница Переменные C# в Razor
- Следующая страница Логика Razor C#
Строки могут повторно выполняться в цикле.
Цикл For
Если вам нужно повторно запускать одинаковые строки, вы можете написать цикл.
Если вы можете определить количество циклов, то вы можете использовать Цикл for. Этот тип цикла专门 предназначен для счетного или обратного счета:
Пример
<html> <body> @for(var i = 10; i < 21; i++) {<p>Строка @i</p>} </body> </html>
Запуск примера
Цикл For Each
Если вам нужно обрабатывать набор или массив, то обычно вам нужно использовать Цикл for each.
Сборник представляет собой группу аналогичных объектов, цикл for each позволяет вам выполнить задачу один раз для каждого элемента. Цикл for each будет перебирать набор до завершения.
В следующем примере перебирается коллекция ASP.NET Request.ServerVariables.
Пример
<html> <body> <ul> @foreach (var x in Request.ServerVariables) {<li>@x</li>} </ul> </body> </html>
Запуск примера
While цикл
while - это универсальный цикл.
Цикл whileЦикл begins с ключевого слова while, за которым следуют скобки, в которых определен длительность цикла, затем блок кода, который нужно повторять.
Цикл while обычно увеличивает или уменьшает переменную подсчета.
В следующем примере каждый раз, когда цикл выполняется, оператор += добавляет 1 к переменной i.
Пример
<html> <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>Members</h3> @foreach (var person in members) { <p>@person</p> } <p>Количество Members в Members: @len</p> <p>В позиции 2 человек: @x</p> <p>Kai расположен в позиции: @i</p> </body> </html>
Запуск примера
- Предыдущая страница Переменные C# в Razor
- Следующая страница Логика Razor C#