【问题标题】:static url mapping and routing issue静态 url 映射和路由问题
【发布时间】:2011-07-29 09:40:54
【问题描述】:

我在这里定义了路线映射:

context.MapRoute(
            "AddPost",
            "Admin/Post/Add/",
            new { controller = "Post", action = "Add" },
            new[] { "mBlog.Admin.Controllers " }
            );
context.MapRoute(
            "admin_default",
            "Admin/{controller}/{action}/{id}",
            new { action = "Index", id = UrlParameter.Optional },
            new[] { "mBlog.Admin.Controllers" }
        );

“管理员”是一个区域。

问题是当我请求~/admin/post/add 时,出现 404 错误,找不到资源。但是一旦我删除了第一个路由映射,我就得到了想要的结果。

我用RouteDebugger进行了测试,结果显示它与第一条路由匹配。

不知道第一条路线有什么问题。

【问题讨论】:

  • 请提供更多细节。您说 /admin/post/add 的请求与第一条路由匹配。这就是我所期望的。你期望会发生什么?您在 PostController 上有“添加”方法吗?
  • 是的,我在 PostController 上有一个“添加”方法。 RouteDebugger 显示 /admin/post/add 匹配第一个路由,但我收到 404 错误。一旦我删除了第一条路线,第二条路线就会匹配,并调用“添加”操作。顺便说一句,管理员是一个区域

标签: asp.net url-routing


【解决方案1】:

尝试将Admin/Post/Add/ 更改为Admin/Post/Add

【讨论】:

    最近更新 更多