剃刀(如果只有TR标签)

时间:2019-03-15 10:11:57

标签: c# asp.net-mvc razor

以下Razor代码有什么问题。 我希望根据特定条件使用不同的标签。 但我似乎无法正确解决。 我已经尝试了很多可能性,但是有些帮助会很好。

@helper DrawTableRow(GameModel item)
{
    if (true)
    {
        @:<tr class="type1">
    }
    else
    {
        @:<tr class="type2">
    }

        <td>@item.Name</td>
    </tr>
}

2 个答案:

答案 0 :(得分:0)

我相信这就是您想要的:

@helper DrawTableRow(GameModel item)
{
    if (true)
    {
        <tr class="type1">
          <td>@item.Name</td>
        </tr>
    }
    else
    {
        <tr class="type2">
          <td>@item.Name</td>
        </tr>
    }  
}

根据您的情况,将选择相应的类别并与您的数据一起显示。

编辑:

您可以根据情况简单地设置一个类变量:

@helper DrawTableRow(GameModel item)
{
    var selectedClass=string.empty;

        if (true)
        {
        selectedClass="type1";            
        }
        else
        {
        selectedClass="type2";
        }

        <tr class="@selectedClass">
          <td>@item.Name</td>
        </tr> 
}

答案 1 :(得分:0)

我没有找到解决方案,但是我以其他方式解决了我需要的问题

<tr @if (Model.GameDetailsModel != null) { @: style="cursor: pointer" onclick="location.href = @Model.GameDetailsModel.Url?Id=@item.Id"
}>

所以基本上我没有为每个tr标签创建if else,我只是创建了一个tr标签,只是在if里面放了一个if