ASP.NET Razor - C# ลูปและอาร์เรย์
คำสั่งสามารถดำเนินการซ้ำ ๆ ในลูปได้
สำหรับลูป
หากคุณต้องการรันคำสั่งเดิมซ้ำๆ คุณสามารถตั้งโปรแกรมลูปได้
หากคุณรู้ว่าต้องการวนซ้ำ กี่ครั้ง คุณสามารถใช้ a for loop การวนซ้ำประเภทนี้มีประโยชน์อย่างยิ่งในการนับขึ้นหรือนับถอยหลัง:
ตัวอย่าง
<html>
<body>
@for(var i = 10; i < 21; i++)
{<p>Line @i</p>}
</body>
</html>
สำหรับแต่ละลูป
หากคุณทำงานกับคอลเลกชันหรืออาร์เรย์ คุณมักจะใช้ a สำหรับแต่ละลูป
คอลเล็กชันคือกลุ่มของออบเจ็กต์ที่คล้ายกัน และสำหรับแต่ละลูปช่วยให้คุณทำงานบนแต่ละรายการได้ สำหรับแต่ละลูปจะเดินผ่านคอลเล็กชันจนกว่าจะเสร็จสิ้น
ตัวอย่างด้านล่างอธิบายคอลเลกชัน ASP.NET Request.ServerVariables
ตัวอย่าง
<html>
<body>
<ul>
@foreach (var x in
Request.ServerVariables)
{<li>@x</li>}
</ul>
</body>
</html>
ในขณะที่ลูป
while loopเป็นการวนรอบวัตถุประสงค์ทั่วไป
วง while เริ่มต้นด้วยคีย์เวิร์ด while ตามด้วยวงเล็บ ซึ่งคุณระบุระยะเวลาที่ลูปจะดำเนินต่อไป จากนั้นบล็อกที่จะทำซ้ำ
ในขณะที่การวนซ้ำมักจะบวกหรือลบออกจากตัวแปรที่ใช้สำหรับการนับ
ในตัวอย่างด้านล่าง ตัวดำเนินการ += จะเพิ่ม 1 ให้กับตัวแปร i ทุกครั้งที่ลูปทำงาน
ตัวอย่าง
<html>
<body>
@{
var i = 0;
while (i < 5)
{
i += 1;
<p>Line @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>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>