首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >路由映射突然中断。如何修复?

路由映射突然中断。如何修复?
EN

Stack Overflow用户
提问于 2011-09-23 16:15:30
回答 1查看 310关注 0票数 0

我的MVC应用程序的路由映射突然中断。

下面是路由映射

代码语言:javascript
复制
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

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

以下是控制器代码

代码语言:javascript
复制
public class HomeController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    public string Login()
    {
        return "Login";
    }
}

我可以使用http://localhost:49637/访问“索引”视图,但无法通过http://localhost:49637/Login访问“登录”视图。如果我尝试通过http://localhost:49637/Home/Login访问登录视图,它可以工作。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-23 16:27:35

您没有匹配的路由- 'http://localhost:49637/Login‘,因为您唯一的路由同时查找控制器和操作值,而您只传递了一个值,因此MVC试图将您路由到一个不存在的'Login’控制器。我还没有测试过,但是添加这样的东西应该可以解决你的问题-

代码语言:javascript
复制
routes.MapRoute(
    "Login",
    "Login",
    new { controller = "Home", action = "Login" }
);

请记住,asp.net MVC将使用它找到的第一个匹配路由,因此您需要在RegisterRoutes函数中将此路由放在“默认”路由之上。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7526105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档