Asp.net mvc MVC For..如何有条件地设置类?

Asp.net mvc MVC For..如何有条件地设置类?,asp.net-mvc,twitter-bootstrap,razor,Asp.net Mvc,Twitter Bootstrap,Razor,在MVC视图中,我有一个For…列表的每个循环。我需要做的是查看属性以确定记录是否已标记为已删除,然后在表行上设置引导类danger 我可以查看属性并为每个条件编写表行,但这似乎是额外的工作。如果我使用下面的代码,Razor不喜欢它看不到初始标记的事实。关于如何干净地完成这一点,有什么建议吗 @foreach (var item in Model.MyList) { if (item.IsDeleted == 1) { @Html.Raw("<tr clas

在MVC视图中,我有一个For…列表的每个循环。我需要做的是查看属性以确定记录是否已标记为已删除,然后在表行上设置引导类danger

我可以查看属性并为每个条件编写表行,但这似乎是额外的工作。如果我使用下面的代码,Razor不喜欢它看不到初始标记的事实。关于如何干净地完成这一点,有什么建议吗

@foreach (var item in Model.MyList)
{
    if (item.IsDeleted == 1)
    {
        @Html.Raw("<tr class='danger'>")
    }
    else
    {
        @Html.Raw("<tr>")
    }
        <td>@item.FirstName</td>
        <td>@item.LastName</td>
        <td>@item.EmployeeId</td>
    </tr>
}

这是解决问题的简单方法

@foreach (var item in Model.MyList)
{
    <tr class="@(item.IsDeleted ? "danger" : string.Empty) ">  
        <td>@item.FirstName</td>
        <td>@item.LastName</td>
        <td>@item.EmployeeId</td>
    </tr>
}

像这样的怎么样

 @foreach (var item in Model.MyList)
    {
            <tr class="@(Model.deleted ? "danger" : "")"> 
            <td>@item.FirstName</td>
            <td>@item.LastName</td>
            <td>@item.EmployeeId</td>
        </tr>
    }

你可以这样简单地使用它

@foreach (var item in Model.MyList)
{
 if (item.IsDeleted == 1)
 {
    <tr class="danger">
        <td>@item.FirstName</td>
        <td>@item.LastName</td>
        <td>@item.EmployeeId</td>
    </tr>
 }
 else
 {
    <tr>
        <td>@item.FirstName</td>
        <td>@item.LastName</td>
        <td>@item.EmployeeId</td>
    </tr>
 }  
或者另一种选择是


谢谢,第一个建议是我最初所做的,但是我有几个比我发布的更多的表格单元格,而且看起来好像有很多重复的代码。你的选择更接近我想要的。这对你有用吗?我使用了@Rahul建议,这与你发布的内容类似。谢谢你的示例。我可以发誓我试过这样的东西,但没用。我可能把@标志放错地方了。不管怎样,我都遵循这一点,得到了我所需要的。
@foreach (var item in Model.MyList)
{
   <tr @(item.IsDeleted != 1 ? String.Empty : "class=\"danger\"" )>

        <td>@item.FirstName</td>
        <td>@item.LastName</td>
        <td>@item.EmployeeId</td>
    </tr>
}