c#asp.net mvc-简化

c#asp.net mvc-简化,c#,asp.net,asp.net-mvc,if-statement,boolean,C#,Asp.net,Asp.net Mvc,If Statement,Boolean,如何简化这个复合条件 @if (Model.State.Inventory[0] == true && Model.State.Inventory[1] == true && Model.State.Inventory[2] == true && Model.State.Inventory[3] == true && Model.State.Inventory[4] == true

如何简化这个复合条件

    @if (Model.State.Inventory[0] == true
     && Model.State.Inventory[1] == true
     && Model.State.Inventory[2] == true
     && Model.State.Inventory[3] == true
     && Model.State.Inventory[4] == true
     && Model.State.Inventory[5] == true)
    {
        <a type="button" class="btn btn-secondary" asp-page="Cellar">Go to the Cellar</a>
    }
@if(Model.State.Inventory[0]==true
&&Model.State.Inventory[1]==true
&&Model.State.Inventory[2]==true
&&Model.State.Inventory[3]==true
&&Model.State.Inventory[4]==true
&&Model.State.Inventory[5]==true)
{
去地下室
}

这可以使用LINQ和:

@if(Model.State.Inventory.Take(6.All)(x=>x==true))
{
林克:

@if (Model.State.Inventory.Inventory[..6].All(x => x == true))
{
    <a type="button" class="btn btn-secondary" asp-page="Cellar">Go to the Cellar</a>
}
@if(Model.State.Inventory.Inventory[..6].All(x=>x==true))
{
去地下室
}

if(Model.State.Inventory.Take(6).All(x=>x==true))
或使用C#8:
if(Model.State.Inventory[..^5]。All(x=>x==true))
总是有六个库存项目吗?[..5]不是[..^5]@DamilolaAdegunwa很好,谢谢!
@if (Model.State.Inventory.Inventory[..6].All(x => x == true))
{
    <a type="button" class="btn btn-secondary" asp-page="Cellar">Go to the Cellar</a>
}