你调用的对象是空的。仅在使用部分视图时才会出现此错误

时间:2015-11-20 02:22:39

标签: asp.net asp.net-mvc partial-views asp.net-mvc-partialview

我使用了完全相同的actionResult并生成了一个View(不是部分的),并且代码运行得很好。但是当我使用局部视图时,我得到错误: 你调用的对象是空的。但是引用不为null,我在控制器中生成的列表包含值。 这是控制器:

public ActionResult PartialChat()
{
    ChatService chatService = new ChatService();
    var list = chatService.GetChats();
    List<Chat> listChat = new List<Chat>();
    foreach (Chat item in list)
    {
        if (item.date > (DateTime.Now.AddDays(-1)))
        {
            listChat.Add(item);
        }
    }
    return View(listChat);
 }

他认为:

@model IEnumerable<Mutuelle.Domain.Entities.Chat>
<table class="table">
    <tr>
        <th>@Html.DisplayNameFor(model => model.nom)</th>
        <th>@Html.DisplayNameFor(model => model.message)</th>
        <th></th>
    </tr>
    @foreach (var item in Model) {
        <tr>
            <td>@Html.DisplayFor(modelItem => item.nom)</td>
            <td>@Html.DisplayFor(modelItem => item.message)</td>
        </tr>
    }
</table>

1 个答案:

答案 0 :(得分:0)

你是如何渲染局部视图的?

试试这个:

@Html.Action("Chat")