MVC2抱怨它无法在控制器上找到公共操作方法,即使它存在

Cos*_*o D 3 c# asp.net-mvc-2

我正在使用MVC2和VS2008,以及视图中的以下代码〜/ Shared/Site.Master:

<ul id="navlist">
            <li class="first"><a href="<%= Url.Content("~")%>" id="current">Home</a></li>
            <li><a href="<%= Url.Content("~/Store/")%>">Store</a></li>
            <li>
                **<% Html.RenderAction("CartSummary","ShoppingCart"); %></li>**
            <li><a href="<%= Url.Content("~/StoreManager/") %>">Admin</a></li>
        </ul>
Run Code Online (Sandbox Code Playgroud)

抛出以下异常:

执行处理程序'System.Web.Mvc.HttpHandlerUtil + ServerExecuteHttpHandlerAsyncWrapper'的子请求时出错.

这有内部异常:

"在控制器'MvcMusicStore.Controllers.ShoppingCartController'上找不到公共行动方法'CartSummary'."

......没有任何意义."CartSummary"方法定义如下:

// GET: /ShoppingCart/CartSummary
[NHibernateActionFilter]
[ChildActionOnly]
[HttpGet]
public ActionResult CartSummary()
{
    var cart = ShoppingCart.GetCart(this.HttpContext, this.NSession);

    ViewData["CartCount"] = cart.GetCount();

    return PartialView("CartSummary");
}
Run Code Online (Sandbox Code Playgroud)

什么给出了什么?我在这里错过了什么吗?

Pet*_*iss 5

如果从子操作中删除[HttpGet]属性会发生什么?

如果我是正确的,将使用与调用"主要操作"相同的HTTP谓词调用子操作.