2010-10-09 38 views
2

我想向我正在处理的网站添加常见问题部分,并且我想忽略添加到URL的任何操作或ID。ASP.NET MVC2路由映射忽略操作和ID

Global.asax.cs文件的RegisterRoutes方法已更改为;

public static void RegisterRoutes(RouteCollection routes) 
{ 
    routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

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

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

FAQController.cs看起来像这样;

public class FAQController : Controller 
{ 
    private FAQModel _faq = new FAQModel(); 

    public ActionResult Index() 
    { 
     return View(_faq.GetFAQ()); 
    } 
} 

但这似乎没有奏效,我想知道是否有人能告诉我要怎么做这个正确的方向。

感谢所有帮助提前

Satal :)

+0

“但这似乎并没有被工作” - 你怎么测试它,什么结果你看到了吗? – bzlm 2010-10-09 21:02:26

+0

我通过在VS 2010 IDE中按“Start Debugging”来测试它,然后尝试导航到/ FAQ/1,当我去那里时,我得到了默认的404消息。 – Satal 2010-10-09 21:06:34

回答

1

试试这个:

routes.MapRoute(
    "FAQ", 
    "FAQ/{*pathInfo}", 
    new { controller = "FAQ", action = "Index" } 
); 
+0

非常感谢,那正是我需要的:) – Satal 2010-10-09 21:22:13