0

当我在 MVC 中向数据库发送信息并重定向页面并调用打印出新存储数据的视图时,我收到 NullReferenceException 错误:

“你调用的对象是空的。”

显然,我的模型为空:

@foreach (var item in Model) {
<tr>
    <td>
        @Html.DisplayFor(modelItem => item.Name)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.CustomerID)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.Address)
    </td>
    <td>
        @Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
        @Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) |
        @Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })
    </td>
</tr>
}

这是我的控制器:

public ActionResult Index()
    {
        var customer = db.Customer.ToList();
        return View();
    }

哪个被调用:

        [HttpPost]
    public ActionResult Create(CustomerModel customer)
    {
        db.Customer.Add(customer);
        db.SaveChanges();
        return RedirectToAction("Index");
    }

我不明白为什么它是空的......

4

1 回答 1

3
public ActionResult Index()
    {
        var customer = db.Customer.ToList();
        return View(customer);
    }

您永远不会将customer对象传递给视图。

db.SaveChanges();编辑:当发生异常时, 也不将你的 try/catch 包装起来可能很危险。

于 2012-07-29T02:47:46.807 回答