0

使用 ASP.NET MVC4 路由:

如果我想为网站的主要部分设置默认路由配置:

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

然后是另一个路由配置,类似于以下内容:

        routes.MapRoute(
            name: "FOO",
            url: "FOO/{controller}/{action}/{id}",
            defaults: new { controller = "FOO", action = "bar", id = UrlParameter.Optional }
        );

注意 url 中的字符串“ FOO/ ”(就在/{controller...

例如,我希望能够使用如下网址访问我网站的主要部分

http://dummyurl.com/bar/1

但是如果我要使用,然后访问具有相同名称的控制器和操作

http://dummyurl.com/**FOO**/bar/1

4

2 回答 2

1
routes.MapRoute(
    name: "FOO",
    url: "FOO/{controller}/{action}/{id}",
    defaults: new { controller = "FOO", action = "bar", id = UrlParameter.Optional }
);

除非您有一个名为FOO. 该路线仅适用于http://yourdomain/foo/foo/any_method_in_foo/id

于 2013-05-01T02:31:01.857 回答
1

通过浏览“the Gu”的路由文档,我只需要输入:

    routes.MapRoute(
        name: "FOO",
        url: "FOO/{controller}/{action}/{id}",
        defaults: new { controller = "FOO", action = "bar", id = UrlParameter.Optional }
    );

以上:

     routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );

在我Routes.config和 blammo 中,一切顺利。我现在可以在我的项目中分离和访问例如管理员(“FOO”)部分。

于 2013-05-01T02:31:05.000 回答