我正在使用带有 Razor 语法的 MVC3,并且正在查看 Apress 书籍“Pro ASP.Net MVC 3 Framework”中的一个示例(非常好)。在其中,作者在 _Layout.cshtml 文件中有这一点:
<body>
<div id="header">
@{Html.RenderAction("Summary", "Cart");}
<div class="title">SPORTS STORE</div>
</div>
<div id="categories">
@{ Html.RenderAction("Menu", "Nav"); }
</div>
<div id="content">
@RenderBody()
</div>
</body>
我的问题与 CartController 类有关。我看到它在其构造函数中传递了一个 Cart 对象,但是上面的 _Layout.cshtml 片段中的代码似乎在RenderAction()
调用时没有传递一个?
CartController 片段:
public ViewResult Summary(Cart cart) {
return View(cart);
}
当我调试该方法时,实际上传入了一个 Cart 对象,但我看不到它来自哪里。此示例代码使用 Ninject 作为依赖注入容器,但我在配置中找不到任何证据表明它对 Cart 类有任何了解。MVC 中是否有“默认值”机制?