zoukankan      html  css  js  c++  java
  • MVC模式下网站路由配置

    原来asp.net的中的请求是基于物理文件(.aspx)的,所以一个基本的请求对应于应用程序中的某个具体文件。

    所以,在asp.net中,对用户请求没有特别的管理需求,你只要管理好应用程序的物理文件就可以了。 

    到MVC中,这一切发生的根本的改变。用户请求跟物理文件没有一点瓜葛,也是因为有了这样的特性,你可以随意组织

    用户请求的url。无序的路由设置,会导致你的程序混乱不堪。 因而在MVC中,对URL的管理就有必要了。

    以下是个人总结的一些方法。

    1、要有层次结构。 

     以建个企业网站来说,一般分成前台和后台。所谓前台就是用于匿名用户或注册用户使用的界面,后就是指网站管理员进行网站数据

    操作的界面。 一般情况下,我们访问前台是以http://www.site.com/XXXX的形式。后台http://www.site.com/admin/XXXX的形式。

    XXXX表示具体访问的内容。

    前台设置具体如下: 

    首页: http://www.site.com/ 或http://www.site.com/index

    公司简介:http://www.site.com/about

    公司资讯:http://www.site.com/news 

    产品介绍:http://www.site.com/product

    联系我们:http://www.site.com/contat

    ......

    后台

    登录:http://www.site.com/admin/login

    产品维护:http://www.site.com/admin/product

    资讯管理:http://www.site.com/admin/news 

    2、合理对应url和controller

    MVC的控制器定位是基于控制器名称的,所以要做到Controller的名称和action不要和前边定义的访问路径冲突。

     我们还是网站为例,由于结构上就分为前台和后台,我们把控制器也定义为前后台。前台用home,后台用manage。

    Home的action有: Index,News,Product,ShowNews,ShowProduct(),About,Contract等。

    Manage的action有:Login,Product,ProductDetail,AddProduct等。

    3、Routetable

    前台 

     routes.MapRoute(

                    "Home", // Route name

                    "{action}/{Id}", // 将根站点的访问默认交给Home

                    new { controller = "Home", action = "Index" , id = UrlParameter.Optional} // 相当于设置默认页。

                );

    后台 

     routes.MapRoute(

                    "Admin", // Route name

                    "Admin/{action}/{Id}", // 将admin的处理默认交给Manager

                    new { controller = "Manage", action = "Index" , id = UrlParameter.Optional} // 相当于设置默认页。

                ); 

  • 相关阅读:
    lsblk命令详解
    lspci命令详解
    numastat命令详解
    lsscsi命令详解
    lscpu命令详解
    linux内核模块相关命令:lsmod,depmod,modprobe,modinfo,insmod,rmmod 使用说明
    elk收集tomcat的日志
    npm安装
    centos7.5 解决缺少libstdc++.so.6库的原因及解决办法
    linux下正确卸载rpm包
  • 原文地址:https://www.cnblogs.com/icoolno1/p/1867914.html
Copyright © 2011-2022 走看看