MVC5笔记_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > MVC5笔记

MVC5笔记

 2017/6/20 5:45:04  海格力斯  程序员俱乐部  我要评论(0)
  • 摘要:创建一个MVC网站后,我们可以在/app_strat/routeConfig.cs中来查看集中控制路的方法,RegisterRoutes方法(注册路由),我们改一下,删除默认的RegisterRoutes中的所有内容,然后来自定义:publicclassRouteConfig{publicstaticvoidRegisterRoutes(RouteCollectionroutes){routes.MapMvcAttributeRoutes();//自定义路由}
  • 标签:笔记 MVC
创建一个MVC网站后,我们可以在/app_strat/routeConfig.cs中来查看集中控制路的方法,RegisterRoutes方法(注册路由),我们改一下,删除默认的RegisterRoutes中的所有内容,然后来 自定义
class="brush:csharp;gutter:true;">  public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.MapMvcAttributeRoutes(); //自定义路由
        }
    }
然后在Controller注册一个规则
 [Route("Test")]
        public ActionResult About()
        {
            ViewBag.Message = "Your application description page.";

            return View();
        }
然后启动项目,输入Test就会出现About的视图
 [Route("")]
        public ActionResult Index()
        {
            return View();
        }
默认页可以这样写,注册的规则也可以重叠,既一个控制器(Controller)可以注册多条路由规则
  [Route("")]
        [Route("home")]
        [Route("home/index")]
        public ActionResult Index()
        {
            return View();
        }
路由值可以这样写
 [Route("Test/{id}")]
        public ActionResult About(int id)
        {
            ViewBag.Message = "Your application description page.";

            return View();
        }
控制器路由: 前面看到了如何把路由的特性添加到操作方法,很多时侯,控制器中的方法遵循的模式基本上一样,我们可以用一个通用方法,来节省一下代码量和时间。 我们这样改一下HomeController
 [Route("home/{action}")]
    public class HomeController : Controller
    {
        //[Route("")]
        //[Route("home")]
        //[Route("home/index")]
        public ActionResult Index()
        {
            return View();
        }
      
        public ActionResult About(int id)
        {
            ViewBag.Message = "Your application description page.";

            return View();
        }

        public ActionResult Contact()
        {
            ViewBag.Message = "Your contact page.";

            return View();
        }
    }
}

当然这种方法还支持为个别控制提供单独的路由规则
  [Route("")]
        [Route("home")]
        [Route("home/index")]
        public ActionResult Index()
        {
            return View();
        }

写得有点凌乱,改天有时间修改

发表评论
用户名: 匿名