MVC 视图中的 If else 条件
If else condition in MVC view
我正在尝试遍历 if else 条件,如果它们是当前的,则显示该项目,如果不是,则显示没有项目的消息。我遇到的问题是消息无论如何都会显示。我做错了什么?
我已经尝试将消息完全放在循环之外,并尝试了 else if (iscurrent=false),并且在这两种情况下消息仍然显示。
<div class="col-md-6">
<ul>
@foreach (var item in Model.Items)
{
if (item.IsCurrent == true)
{
<li>
@item.Id
</li>
}
else if (item.IsCurrent == false)
{
@: There is not a current Item at this time. Do you want
to
<a asp-area="Admin" asp-controller="Item" asp-
action="CreateItem"> add a Item?</a>
}
}
</ul>
</div>
我希望仅显示设置为 IsCurrent 的项目,并且当没有项目时仅显示消息。
我相信这会更接近你想要的:
<div class="col-md-6">
<ul>
@if (Model.Items.Any(x => x.IsCurrent))
{
foreach (var item in Model.Items)
{
if (item.IsCurrent)
{
<li>
@item.Id
</li>
}
}
}
else
{
@:There is not a current Item at this time. Do you want to
<a asp-area="Admin" asp-controller="Item" asp-action="CreateItem">add a Item?</a>
}
</ul>
</div>
首先它使用 .Any()
检查任何当前项目,然后遍历 Model.Items
并显示当前 ID。如果不是,则显示没有当前项目消息。
我正在尝试遍历 if else 条件,如果它们是当前的,则显示该项目,如果不是,则显示没有项目的消息。我遇到的问题是消息无论如何都会显示。我做错了什么?
我已经尝试将消息完全放在循环之外,并尝试了 else if (iscurrent=false),并且在这两种情况下消息仍然显示。
<div class="col-md-6">
<ul>
@foreach (var item in Model.Items)
{
if (item.IsCurrent == true)
{
<li>
@item.Id
</li>
}
else if (item.IsCurrent == false)
{
@: There is not a current Item at this time. Do you want
to
<a asp-area="Admin" asp-controller="Item" asp-
action="CreateItem"> add a Item?</a>
}
}
</ul>
</div>
我希望仅显示设置为 IsCurrent 的项目,并且当没有项目时仅显示消息。
我相信这会更接近你想要的:
<div class="col-md-6">
<ul>
@if (Model.Items.Any(x => x.IsCurrent))
{
foreach (var item in Model.Items)
{
if (item.IsCurrent)
{
<li>
@item.Id
</li>
}
}
}
else
{
@:There is not a current Item at this time. Do you want to
<a asp-area="Admin" asp-controller="Item" asp-action="CreateItem">add a Item?</a>
}
</ul>
</div>
首先它使用 .Any()
检查任何当前项目,然后遍历 Model.Items
并显示当前 ID。如果不是,则显示没有当前项目消息。