日期:2014-05-17  浏览次数:20423 次

mvc路由怎么配置
Test的控制器里有两个action
public ActionResult Index()
public ActionResult Index(int id)

对控制器类型“TestController”的操作“Index”的当前请求在下列操作方法之间不明确:
类型 MVCDemo.Controllers.TestController 的 System.Web.Mvc.ActionResult Index()
类型 MVCDemo.Controllers.TestController 的 System.Web.Mvc.ActionResult Index(Int32)
===============================================================================
路由是默认的
routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id=UrlParameter.Optional }
                );
这里的id这个参数是可选的,怎么改成不可选的呢

------解决方案--------------------
那你是需要传id还是不传呢,怎么又能兼顾你那两个index呢(一个带id,一个不带)。
最佳做法,你把两个index合并不就成了:index(int? id) !