2011-08-23 185 views
0

我在航线表中添加了以下路线。MVC - 在应用程序启动时导航到主页

routes.MapRoute(
      "Default",            
      "{controller}.aspx/{action}/{id}",      
      new { action = "Index", id = "" } 
     ); 

     routes.MapRoute(
      "Root",  
      "",   
      new { controller = "Home", action = "Index", id = "" } 
     ); 

     routes.MapRoute(
      "Home",             
      "Index",           
      new { controller = "Home", action = "Index", id = "" } 
     ); 

我可以导航到主页(手动)。但是应用程序不会在应用程序启动时导航。

任何想法?谢谢。

+0

哪里应用开始? – yoozer8

+0

我的应用程序启动:http://domain/vdir1/vdir2/home.aspx/index – mg3

+0

您是否使用Visual Studio?如果是这样,请在开始调试时选择任何不是.aspx的文件。如果在home.aspx打开时启动,它将尝试直接加载该页面,尽管URL错误。结果是“domain/vdir1/vdir2/home”成为第一个路由中的控制器,并且添加了“索引”操作,因为您将其提供为默认值。 – yoozer8

回答

1

这个代码块会工作得改变路由器名称

routes.MapRoute(
     ".netx", 
     "{controller}.aspx/{action}/{id}", 
     new 
     { 
      action = "Index", 
      id = "" 
     }); 


     routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults 
     ); 

,并请务必在应用程序启动页面

and please be sure on the application start page

相关问题