首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何判断此View链接到哪个控制器?

如何判断此View链接到哪个控制器?
EN

Stack Overflow用户
提问于 2011-11-07 01:46:51
回答 2查看 189关注 0票数 1

我仍在为读取global.asax上的路由而苦苦挣扎……我可以看到URL是

funnelweb/admin/login

这些路由是:

代码语言:javascript
复制
        // Due to a bug in the .AddServiceRoute<>() method in WCF we have to do this work around.
        // see http://wcf.codeplex.com/workitem/9 for bug description
        // Workaround caches all service route urls, removes the service routes. Adds a constraint to the wiki page route
        // then re-adds the service routes at the end.
        var serviceRoutes = routes
            .OfType<ServiceRoute>()
            .ToList();
        var serviceRoutesUrls = serviceRoutes
            .Select(serviceRoute => serviceRoute.Url.Replace("{*pathInfo}", ""))
            .ToArray();
        var notAService = new NotFromValuesListConstraint(serviceRoutesUrls.ToArray());
        var defaultConstraint = new { page = notAService };
        foreach (var serviceRoute in serviceRoutes)
        {
            routes.Remove(serviceRoute);
        }

        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.IgnoreRoute("{*allaxd}", new { allaxd = @".*\.axd(/.*)?" });
        routes.IgnoreRoute("pingback");

        if (builder != null)
            AreaRegistration.RegisterAllAreas();

        // Feeds
        routes.MapLowerCaseRoute("feed", new { controller = "Feed", action = "Feed", feedName = (string)null });
        routes.MapLowerCaseRoute("feeds/{*feedName}", new { controller = "Feed", action = "Feed" });
        routes.MapLowerCaseRoute("commentfeed", new { controller = "Feed", action = "CommentFeed" });

        // Upload
        routes.MapLowerCaseRoute("get/{*path}", new { controller = "Upload", action = "Render", area = "Admin" });


        // Resources
        routes.MapLowerCaseRoute("robots", new { controller = "Resource", action = "Render", fileName = "/Content/Resources/Robots.txt", contentType = "text/plain" });
        routes.MapLowerCaseRoute("robots.txt", new { controller = "Resource", action = "Render", fileName = "Content/Resources/Robots.txt", contentType = "text/plain" });
        routes.MapLowerCaseRoute("humans.txt", new { controller = "Resource", action = "Render", fileName = "Content/Resources/Humans.txt", contentType = "text/plain" });
        routes.MapLowerCaseRoute("humans", new { controller = "Resource", action = "Render", fileName = "Content/Resources/Humans.txt", contentType = "text/plain" });
        routes.MapLowerCaseRoute("favicon", new { controller = "Resource", action = "Render", fileName = "{Theme}/Content/Images/favicon.ico", fileName2 = "/Content/Resources/favicon.ico", contentType = "image/vnd.microsoft.icon" });
        routes.MapLowerCaseRoute("favicon.ico", new { controller = "Resource", action = "Render", fileName = "{Theme}/Content/Images/favicon.ico", fileName2 = "/Content/Resources/favicon.ico", contentType = "image/vnd.microsoft.icon" });
        routes.MapLowerCaseRoute("favicon.png", new { controller = "Resource", action = "Render", fileName = "{Theme}/Content/Images/favicon.png", fileName2 = "/Content/Resources/favicon.png", contentType = "image/png" });
        routes.MapLowerCaseRoute("status", new { controller = "Resource", action = "Render", fileName = "/Content/Resources/Status.html", contentType = "text/html" });

        // Site Map
        routes.MapLowerCaseRoute("sitemap", new { controller = "Wiki", action = "SiteMap" });
        routes.MapLowerCaseRoute("sitemap.xml", new { controller = "Wiki", action = "SiteMap" });

        // Tags
        routes.MapLowerCaseRoute("tag/{*tagName}", new { controller = "Tag", action = "Index" });

        // Tagged Pages
        routes.MapLowerCaseRoute("tagged/{*tag}", new {controller = "Tagged", action = "Index"});

        // Wiki
        routes.MapLowerCaseRoute("blog", new { controller = "Wiki", action = "Recent", pageNumber = "0" });
        routes.MapLowerCaseRoute("blog/{pageNumber}", new { controller = "Wiki", action = "Recent" }, new { pageNumber = "\\d+" });
        routes.MapLowerCaseRoute("", new { controller = "Wiki", action = "Home", pageNumber = "0" });
        routes.MapLowerCaseRoute("{pageNumber}", new { controller = "Wiki", action = "Home" }, new { pageNumber = "\\d+" });
        routes.MapLowerCaseRoute("search", new { controller = "Wiki", action = "Search" });

        routes.MapLowerCaseRoute("unpublished", new { controller = "WikiAdmin", Area = "Admin", action = "Unpublished" });
        routes.MapLowerCaseRoute("admin/new", new { controller = "WikiAdmin", Area = "Admin", action = "Edit", page = "" });
        routes.MapLowerCaseRoute("edit/{*page}", new { controller = "WikiAdmin", Area = "Admin", action = "Edit", page = UrlParameter.Optional });
        routes.MapLowerCaseRoute("revert/{*page}", new { controller = "WikiAdmin", Area = "Admin", action = "Revert" });

        routes.MapLowerCaseRoute("via-feed/{*page}", new { controller = "Resource", action = "Render", fileName = "/Content/Images/Transparent.gif", contentType = "image/gif" });
        routes.MapLowerCaseRoute("history-of/{*page}", new { controller = "Wiki", action = "Revisions" });
        routes.MapLowerCaseRoute("trackbacks-for/{*page}", new { controller = "Wiki", action = "Pingbacks" });

        // Remove .aspx
        routes.Add(new RedirectRoute("(?<page>[a-zA-Z0-9/\\-\\._\\+ ]+)\\.aspx", new MvcRouteHandler()) { ReplacePattern = "/$1" });
        routes.Add(new RedirectRoute("(?<page>rss)$", new MvcRouteHandler()) { ReplacePattern = "feed", ResponseCode = 302});

        routes.MapLowerCaseRoute("{*page}", new { controller = "Wiki", action = "Page" }, defaultConstraint);

        foreach (var serviceRoute in serviceRoutes)
        {
            routes.Add(serviceRoute);
        }

我就是不明白我是怎么弄清楚它的去向的。因为似乎没有任何内容与/admin/login匹配...?

EN

回答 2

Stack Overflow用户

发布于 2011-11-07 01:57:36

也许你有一个注册路线的区域。还有,你有没有试过瞥一眼?Glimpse将向您显示使用了哪些路由。http://getglimpse.com/

票数 1
EN

Stack Overflow用户

发布于 2013-04-01 14:06:55

我也在尝试FunnelWeb博客,我发现到管理员/登录的路径在

\FunnelWeb\src\FunnelWeb.Web\Areas\Admin\RouteConfig.cs

代码语言:javascript
复制
context.MapRoute(
                "Admin_Login",
                "admin/login/{action}",
                new { controller = "Login", action = "Login" }
                );
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8028997

复制
相关文章

相似问题

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