Razor は、ASP.NET の VB (Visual Basic) をサポートしています。このセクションでは、同じステートメントを繰り返し簡単に実行する方法について説明します。
ステートメントはループ内で繰り返し実行されます。
同じステートメントを繰り返し実行する必要がある場合は、ループを設定できます。
ループする回数がわかっている場合は、 for ループを使用できます。このタイプのループは、カウントアップまたはカウントダウンするときに特に便利です。
<html> <body> @For i=10 To 21@<p>Line #@i</p>Next i </body> </html>
コレクションまたは配列を操作している場合は、 for each ループを使用することがよくあります。
コレクションは類似したオブジェクトのグループであり、for each ループはコレクションが完了するまで反復できます。
次の例では、ASP.NET Request.ServerVariables コレクションが走査されます。
<html> <body> <ul> @For Each x In Request.ServerVariables@<li>@x</li>Next x </ul> </body> </html>
while ループは一般的なループです。
while ループは while キーワードで始まり、ループの継続時間を指定するかっこ、そして繰り返されるコードのブロックが続きます。
while ループは通常、カウント用のインクリメントまたはデクリメント変数を設定します。
次の例では、+= 演算子は、ループが実行されるたびに変数 i の値に 1 を加えます。
<html> <body> @CodeDim i=0Do While i<5i += 1@<p>Line #@i</p>LoopEnd コード</body> </html>
複数の同様の変数を保存したいが、変数ごとに個別の変数を作成したくない場合は、配列を使用して以下を保存できます。
@CodeDim members As String()={"Jani","Hege","Kai","Jim"}i=Array.IndexOf(members,"Kai")+1len=members.Lengthx=members(2-1)終了コード<html> <body> <h3>メンバー</h3> @各人 メンバー内@<p>@person</p>次の人<p>メンバー内の名前の数は @len です</p> <p>位置 2 の人は @x です</p> <p>Kai は現在 @i のポジションにいます</p> </body> </html>