ASP.NET Razor – VB-Schleifen und -Arrays


Anweisungen können wiederholt in Schleifen ausgeführt werden.


Für Schleifen

Wenn Sie dieselben Anweisungen wiederholt ausführen müssen, können Sie eine Schleife programmieren.

Wenn Sie wissen, wie oft Sie eine Schleife ausführen möchten, können Sie eine for-Schleife verwenden . Diese Art von Schleife ist besonders nützlich zum Aufwärts- oder Abwärtszählen:

Beispiel

<html>
<body>
@For i=10 To 21
    @<p>Line #@i</p>
Next i
</body>
</html>

Für jede Schleife

Wenn Sie mit einer Sammlung oder einem Array arbeiten, verwenden Sie häufig eine for each-Schleife .

Eine Sammlung ist eine Gruppe ähnlicher Objekte, und mit der for each-Schleife können Sie eine Aufgabe für jedes Element ausführen. Die for each-Schleife durchläuft eine Sammlung, bis sie fertig ist.

Das folgende Beispiel führt durch die ASP.NET Request.ServerVariables-Auflistung.

Beispiel

<html>
<body>
<ul>
@For Each x In Request.ServerVariables
    @<li>@x</li>
Next x
</ul>
</body>
</html>


While-Schleifen

Die While-Schleife ist eine Allzweckschleife.

Eine While-Schleife beginnt mit dem Schlüsselwort while, gefolgt von Klammern, in denen Sie angeben, wie lange die Schleife fortgesetzt wird, und einem zu wiederholenden Block.

While-Schleifen addieren oder subtrahieren normalerweise eine Variable, die zum Zählen verwendet wird.

Im folgenden Beispiel fügt der Operator += bei jeder Ausführung der Schleife 1 zur Variablen i hinzu.

Beispiel

<html>
<body>
@Code
Dim i=0
Do While i<5
    i += 1
    @<p>Line #@i</p>
Loop
End Code

</body>
</html>

Arrays

Ein Array ist nützlich, wenn Sie ähnliche Variablen speichern möchten, aber nicht für jede eine separate Variable erstellen möchten:

Beispiel

@Code
Dim members As String()={"Jani","Hege","Kai","Jim"}
i=Array.IndexOf(members,"Kai")+1
len=members.Length
x=members(2-1)
end Code
<html>
<body>
<h3>Members</h3>
@For Each person In members
   @<p>@person</p>
Next person

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