我正在研究下一本书中第4章的SportsStore示例并且卡住了......
Pro Asp.net mvc框架
我收到以下错误:
控制器类型'ProductsController'上的当前操作请求'List'在以下操作方法之间不明确: System.Web.Mvc.ViewResult类型为WebUI.Controllers.ProductsController的List() WebUI.Controllers.ProductsController类型上的System.Web.Mvc.ViewResult List(Int32)..
我的路由器代码如下所示:
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapRoute(
null, // Route name
"", // URL with parameters
new { controller = "Products", action = "List", page=1 }
);
routes.MapRoute(
null, // Route name
"Page{page}", // URL with parameters
new { controller = "Products", action = "List" }, // Parameter defaults
new { page = @"\d+" }
);
}
和控制器代码如下所示:
public ViewResult List()
{
return View(productsRepository.Products.ToList());
}
public ViewResult List(int page)
{
return View(productsRepository.Products
.Skip((page - 1) * PageSize)
.Take(PageSize)
.ToList());
}
我错过了什么?
我的网址如下:
或
感谢
答案 0 :(得分:1)
删除List()
控制器方法。在本书中,它指出您需要将现有List()
方法更新为您当前拥有的方法List(int page)
。