将数据附加到表数据元素时,foreach
文件中的cshtml
引发空异常
我尝试调试
@foreach (onlineStore.Areas.Admin.Models.orderModel i in ViewBag.data)
{
<tr>
<td>@i.uName</td>
<td>@i.oDate</td>
<td>@i.tCost</td> //throws exception here
<td>
<a asp-action="Details" asp-controller="Admin" asp-area="Admin" asp-route-userid="@ViewBag.i.oID" class="btn btn-primary">Details</a>
</td>
</tr>
}
here is an image of the data at he debugging
例外是:
“ Microsoft.CSharp.RuntimeBinder.RuntimeBinderException:'无法 在空引用上执行运行时绑定'“
答案 0 :(得分:1)
使用前,您需要检查ViewBag.data != null
。
可能将错误的变量@ViewBag.i.oID
更改为i.oID
@if (ViewBag.data != null)
{
foreach (onlineStore.Areas.Admin.Models.orderModel i in ViewBag.data)
{
<tr>
<td>@i.uName</td>
<td>@i.oDate</td>
<td>@i.tCost</td> //throws exception here
<td>
<a asp-action="Details" asp-controller="Admin" asp-area="Admin" asp-route-userid="@i.oID" class="btn btn-primary">Details</a>
</td>
</tr>
}
}