ViewBag中记录数为1时如何重复for循环?
How to repeat for loop when the record count is one in ViewBag?
我有 ViewBag
可以数一到二。如果计数为一,那么我希望某些 Html 重复,如果计数为二,则我希望循环正常执行。
for(int i = 0; i < ViewBag.Address; i++)
{
if(i== 0) {
<b>Current Address</b>
}
else{
<b>Permanent Address</b>
}
<input type="text" value="@ViewBag.Address[i].Addreess1" />
<input type="text" value="@ViewBag.Address[i].Addreess1" />
//I tried doing something like
i = ViewBag.Address.Count == 1 ? 0: 1;
}
但这里的循环一直在重复,无论如何检查计数是否为 1,然后再次重复循环,否则根据 ViewBag 中的项目继续渲染。
这可能就是您想要的:
@switch (ViewBag.address.Count)
{
case 1: // some set of Html to repeat
@for (int i = 0; i < length; i++)
{
<span> some Html item</span>
}
break;
default: // loop executes normally
foreach (var item in ViewBag.Address)
{
<b>@item.SomeProperty</b>
<input type="text" value="@item.Addrees" />
}
}
你能不能只移动这条语句:
i = ViewBag.Address.Count == 1 ? 0: 1;
for 循环内部是这样的?
for(int i=1;i==1; i=ViewBag.Address.Count == 1 ? 0: 1)
以防万一你关心计数-
var count = @Enumerable.Count(ViewBag.Address)
然后-
@if(count==2)
@if(count==1)
正在纠正代码-
@{
var count = Enumerable.Count(ViewBag.Address);
}
@foreach (var item in ViewBag.Address)
{
if (count == 2)
{
<b>Current Address</b>
}
else
{
<b>Permanent Address</b>
}
<input type="text" value="@item.Addreess1" />
<input type="text" value="@item.Addreess1" />
}
我有 ViewBag
可以数一到二。如果计数为一,那么我希望某些 Html 重复,如果计数为二,则我希望循环正常执行。
for(int i = 0; i < ViewBag.Address; i++)
{
if(i== 0) {
<b>Current Address</b>
}
else{
<b>Permanent Address</b>
}
<input type="text" value="@ViewBag.Address[i].Addreess1" />
<input type="text" value="@ViewBag.Address[i].Addreess1" />
//I tried doing something like
i = ViewBag.Address.Count == 1 ? 0: 1;
}
但这里的循环一直在重复,无论如何检查计数是否为 1,然后再次重复循环,否则根据 ViewBag 中的项目继续渲染。
这可能就是您想要的:
@switch (ViewBag.address.Count)
{
case 1: // some set of Html to repeat
@for (int i = 0; i < length; i++)
{
<span> some Html item</span>
}
break;
default: // loop executes normally
foreach (var item in ViewBag.Address)
{
<b>@item.SomeProperty</b>
<input type="text" value="@item.Addrees" />
}
}
你能不能只移动这条语句:
i = ViewBag.Address.Count == 1 ? 0: 1;
for 循环内部是这样的?
for(int i=1;i==1; i=ViewBag.Address.Count == 1 ? 0: 1)
以防万一你关心计数-
var count = @Enumerable.Count(ViewBag.Address)
然后-
@if(count==2)
@if(count==1)
正在纠正代码-
@{
var count = Enumerable.Count(ViewBag.Address);
}
@foreach (var item in ViewBag.Address)
{
if (count == 2)
{
<b>Current Address</b>
}
else
{
<b>Permanent Address</b>
}
<input type="text" value="@item.Addreess1" />
<input type="text" value="@item.Addreess1" />
}