Home -6ren">
gpt4 book ai didi

c# - MVC2 提示它无法在 Controller 上找到公共(public)操作方法,即使它在那里

转载 作者:行者123 更新时间:2023-11-30 15:03:06 26 4
gpt4 key购买 nike

我在 VS2008 中使用 MVC2,在 View ~/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>

抛出以下异常:

Error executing child request for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'.

它有这个内部异常:

"A public action method 'CartSummary' was not found on controller 'MvcMusicStore.Controllers.ShoppingCartController'."

...这没有任何意义。 “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");
}

那么是什么给了?我在这里遗漏了什么吗?

最佳答案

如果您从子操作中删除 [HttpGet] 属性会怎样?

如果我是正确的,将使用与调用“主要操作”时相同的 HTTP 动词来调用子操作。

关于c# - MVC2 提示它无法在 Controller 上找到公共(public)操作方法,即使它在那里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11990482/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com