【发布时间】:2018-11-29 18:17:57
【问题描述】:
我正在处理 MVC 项目,我正在循环一些值,有时其中一些值为空:
我能写什么,我怎么写??运算符或在@Item.User_class.User1.Nickname 为空的情况下设置一些默认值。
代码:
@foreach (var item in ViewBag.nextClassesList)
{
<tr class="@item.Status">
<td>@item.ClassDate</td>
<td>@item.User_Class.User1.NickName ? @item.User_Class.User.NickName </td>
<td>@item.User_Class.ClassType.ClassTypeName.Name (@item.User_Class.ClassType.ClassTypeName.Time min)</td>
</tr>
}
所以这行是问题:
<td>@item.User_Class.User1.NickName ? @item.User_Class.User.NickName </td>
<td>@item.User_Class.User1.NickName </td> Is null sometimes...
【问题讨论】:
-
为什么不创建一个扁平化的视图模型,在控制器操作方法中填充新的视图模型,并在那里而不是在视图中进行所有的空检查?目前,您的视图中最多有 3 个级别的空检查要做,这会变得很丑。
-
@Fran 我从朋友那里收到了这个项目。我需要解决这个问题,直到我为这个问题创建新的解决方案,这就是为什么我要问如何做到这一点?
标签: c# asp.net-mvc razor view ternary-operator