Razor unterstützt VB (Visual Basic) in ASP.NET. In diesem Abschnitt wird beschrieben, wie Sie dieselbe Anweisung einfach wiederholt ausführen können.
Anweisungen werden in der Schleife wiederholt ausgeführt.
Wenn Sie dieselbe Anweisung wiederholt ausführen müssen, können Sie eine Schleife einrichten.
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 beim Aufwärts- oder Abwärtszählen:
<html> <body> @For i=10 To 21@<p>Zeile #@i</p>Nächstes i </body> </html>
Wenn Sie mit Sammlungen oder Arrays arbeiten, verwenden Sie häufig die for every-Schleife .
Eine Sammlung ist eine Gruppe ähnlicher Objekte, und eine for-each-Schleife kann die Sammlung durchlaufen, bis sie vollständig ist.
Im folgenden Beispiel wird die ASP.NET Request.ServerVariables-Auflistung durchlaufen.
<html> <body> <ul> @For Each x In Request.ServerVariables@<li>@x</li>Next x </ul> </body> </html>
Die while-Schleife ist eine allgemeine Schleife.
Eine While-Schleife beginnt mit dem Schlüsselwort while, gefolgt von Klammern, in denen Sie angeben, wie lange die Schleife dauern soll, und dann einem Codeblock, der wiederholt wird.
Eine While-Schleife setzt normalerweise eine inkrementierende oder dekrementierende Variable zum Zählen.
Im folgenden Beispiel addiert der Operator += bei jeder Schleifenausführung 1 zum Wert der Variablen i.
<html> <body> @CodeDim i=0Do While i<5i += 1@<p>Zeile #@i</p>LoopEnd-Code </body> </html>
Wenn Sie mehrere ähnliche Variablen speichern möchten, aber nicht für jede Variable eine separate Variable erstellen möchten, können Sie ein Array zum Speichern von Folgendem verwenden:
@CodeDim member As String()={"Jani","Hege","Kai","Jim"}i=Array.IndexOf(members,"Kai")+1len=members.Lengthx=members(2-1) endCode <html> <body> <h3>Mitglieder</h3> @Für jede Person In Mitglieder@<p>@Person</p>Nächste Person <p>Die Anzahl der Namen in „Mitglieder“ beträgt @len </p> <p>Die Person an Position 2 ist @x </p> <p>Kai ist jetzt in Position @i </p> </body> </html>