ASP.NET Razor - C# smyčky a pole
Příkazy lze provádět opakovaně ve smyčkách.
Pro smyčky
Pokud potřebujete spouštět stejné příkazy opakovaně, můžete naprogramovat smyčku.
Pokud víte, kolikrát chcete opakovat, můžete použít smyčku for . Tento druh smyčky je zvláště užitečný pro počítání nahoru nebo dolů:
Příklad
<html>
<body>
@for(var i = 10; i < 21; i++)
{<p>Line @i</p>}
</body>
</html>
Pro každou smyčku
Pokud pracujete s kolekcí nebo polem, často používáte pro každou smyčku .
Kolekce je skupina podobných objektů a pro každou smyčku můžete provést úkol na každé položce. Smyčka pro každou smyčku prochází kolekcí, dokud není dokončena.
Níže uvedený příklad vás provede kolekcí ASP.NET Request.ServerVariables.
Příklad
<html>
<body>
<ul>
@foreach (var x in
Request.ServerVariables)
{<li>@x</li>}
</ul>
</body>
</html>
Zatímco smyčky
Smyčka while je smyčka pro obecné účely.
Smyčka while začíná klíčovým slovem while, za kterým následují závorky, kde určíte, jak dlouho bude smyčka pokračovat, a poté blok, který se má opakovat.
Zatímco smyčky obvykle přidávají nebo odečítají od proměnné používané pro počítání.
V níže uvedeném příkladu operátor += přidá 1 k proměnné i při každém spuštění smyčky.
Příklad
<html>
<body>
@{
var i = 0;
while (i < 5)
{
i += 1;
<p>Line @i</p>
}
}
</body>
</html>
Pole
Pole je užitečné, když chcete uložit podobné proměnné, ale nechcete pro každou z nich vytvářet samostatnou proměnnou:
Příklad
@{
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>The number of names
in Members are @len</p>
<p>The person at
position 2 is @x</p>
<p>Kai is now in
position @i</p>
</body>
</html>