无法路由MVC控制器

时间:2011-09-22 19:51:23

标签: asp.net-mvc asp.net-mvc-3 routes

我已经尝试过routes.mapRoute但是我无法在MVC 3中找到一种方法来使用它来创建一个根路径路径到一个动作。例如mywebsite.com/party应该重定向到mywebsite.com/events/party,其中事件是控制器,而派对就是行动。

这甚至可能吗?

2 个答案:

答案 0 :(得分:2)

如果没有看到您现有的路线,很难为您提供准确的解决方案。

要记住一条规则:

MVC将解决路径集合中与请求的网址匹配的第一个

不一定是最具体的匹配。

确保您没有其他规则也能满足代码中前面放置的路线,例如路由算法可能正在寻找“聚会”控制器和“索引”操作,因为您有一个默认规则,如:

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

放在你的规则之前。

您需要输入类似

的内容
routes.MapRoute(
    "PartyRoute",
    "party",
    new { controller = "Events", action = "Party" }
);

BEFORE 任何可能只匹配一个参数

的网址的路线

答案 1 :(得分:0)

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