Setdefaultaction(insteadofindex)forcontrollerinASP.NETMVC3:Summary,Details和Status,它们都不带ID或任何其他参数。我希望URL/Dashboard像/Dashboard/Summary一样路由到Dashboard控制器的Summary操作,但我想不出添加路由的正确方法。在Global.asax.cs中,我有以下内容:routes.MapRoute("Default",//Routename"{controller}/{action}/{id}",//URLwithparametersnew{controller="Home",action="Index",id=UrlParameter.Optional}//参数默认值);routes.MapRoute("/Dashboard","Dashboard",new{controller="Dashboard",action="Summary"});对于这两部分,我也尝试过:routes.MapRoute("/Dashboard","{controller}",new{controller="Dashboard",action="Summary"});和routes.MapRoute("/Dashboard","{controller}",new{action="Summary"});但是我在尝试访问/Dashboard时一直收到404。我很确定我遗漏了一些关于MapRoute参数格式的信息,但我不知道它是什么......将你的仪表板路线移动到默认路线之前:routes.MapRoute("Dashboard","Dashboard/{action}",new{controller="Dashboard",action="Summary"});routes.MapRoute("Default",//路由名称"{controller}/{action}/{id}",//带参数的URLnew{controller="Home",action="Index",id=UrlParameter.Optional}//参数默认值);路线的顺序改变了一切。另外,请注意我对仪表板路线所做的更改。第一个参数是路径的名称。第二个是URL,它匹配以Dashboard开头的URL,并允许在Dashboard控制器中执行其他操作。如您所见,它将默认为“摘要操作”。您需要在末尾声明“默认”包罗万象的路由。这为任何Controllerasp.net设置了默认操作:如果它对您和您有用需要了解更多C#学习教程,希望大家多多关注—routes.MapRoute("Dashboard","{controller}/{action}",defaults:new{controller="Dashboard",action="Summary"});本文收集自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除,转载请注明出处:
