加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 为什么在ASP.NET MVC 3中,默认路由不适用于名为

发布时间:2020-12-16 03:37:25 所属栏目:asp.Net 来源:网络整理
导读:我有一个全新的asp.net mvc 3项目.我没有以任何方式修改路线.我有一个名为PageController的控制器和另一个控制器调用ContentController. 当我浏览到domain.com/Page时,页面控制器上的索引操作将按预期执行并显示索引视图. 当我浏览到domain.com/Content时,我
我有一个全新的asp.net mvc 3项目.我没有以任何方式修改路线.我有一个名为PageController的控制器和另一个控制器调用ContentController.

当我浏览到domain.com/Page时,页面控制器上的索引操作将按预期执行并显示索引视图.

当我浏览到domain.com/Content时,我收到404错误.如果我浏览到domain.com/Content/Index,那么它可以正常工作.

如何排除这条路线的故障?

public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

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

我尝试添加其他路线:

public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default",id = UrlParameter.Optional } // Parameter defaults
        ); 
        routes.MapRoute(
             "Content",// Route name
             "Content/{action}/{id}",// URL with parameters
             new { controller = "Content",id = UrlParameter.Optional } // Parameter defaults
         );

    }

但附加路线并没有改变应用程序的行为.

可能是什么导致了这个?

解决方法

因为有一个名为content的物理文件夹.拥有与物理文件夹同名的控制器可能会对您的网站产生一些不利影响.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读