当html.render()方法时,asp.net mvc 5堆栈溢出异常

时间:2015-08-12 14:26:54

标签: asp.net-mvc-4

我创建了一个具有以下操作的控制器。使用viewdata传递类别列表,如下所示

 public ActionResult Home()
        {
            ViewData["categories"] = db.Categories.ToList();
            return View();
        }

我想使用局部视图渲染类别列表。 因此使用以下标记创建部分视图

@using test.Models

@{
    ViewBag.Title = "mnuCategories";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>Browse Categories</h2>

@foreach(Category c in (IEnumerable<Category>)ViewData["categories"])
{
    @c.CategoryName
}

我正在使用

在主页上呈现这个局部视图
@Html.Partial("mnuCategories")

但是当我运行应用程序时,它给了我“stackoverflow excception”

1 个答案:

答案 0 :(得分:1)

您的局部视图不需要再次包含布局(甚至可以再次设置标题)。调用视图将处理此问题。

删除此块

@{
    ViewBag.Title = "mnuCategories";
    Layout = "~/Views/Shared/_Layout.cshtml";
}