コード例 #1
0
        public static void RegisterRoutes(RouteCollection routes)
        {
            MvcRouteConfigurationSection section =
                (MvcRouteConfigurationSection)ConfigurationManager.GetSection("RouteConfiguration");

            routes.MapRoute(section);
        }
コード例 #2
0
        /// <summary>
        /// 从XML读取路由配置信息
        /// </summary>
        /// <param name="routes"></param>
        /// <param name="section"></param>
        public static void MapRoute(this RouteCollection routes, MvcRouteConfigurationSection section)
        {
            // Manipulate the Ignore List
            foreach (IgnoreItem ignoreItem in section.Ignore)
            {
                RouteValueDictionary ignoreConstraints = new RouteValueDictionary();

                foreach (Constraint constraint in ignoreItem.Constraints)
                {
                    ignoreConstraints.Add(constraint.Name, constraint.Value);
                }

                IgnoreRoute(routes, ignoreItem.Url, ignoreConstraints);
            }

            // Manipluate the Routing Table
            foreach (RoutingItem routingItem in section.Map)
            {
                RouteValueDictionary defaults    = new RouteValueDictionary();
                RouteValueDictionary constraints = new RouteValueDictionary();

                if (routingItem.Controller != string.Empty)
                {
                    defaults.Add("controller", routingItem.Controller);
                }

                if (routingItem.Action != string.Empty)
                {
                    defaults.Add("action", routingItem.Action);
                }

                foreach (Parameter param in routingItem.Paramaters)
                {
                    defaults.Add(param.Name, param.Value);
                    if (!string.IsNullOrEmpty(param.Constraint))
                    {
                        constraints.Add(param.Name, param.Constraint);
                    }
                }

                MapRoute(routes, routingItem.Name, routingItem.Url, defaults, constraints);
            }
        }
コード例 #3
0
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { culture = "zh", controller = "Home", action = "Index", id = UrlParameter.Optional }
                );

            //配置文化区域Url 模板
            routes.MapRoute(
                name: "culture",
                url: "{culture}/{controller}/{action}/{id}",
                defaults: new { culture = "zh", controller = "ThreadCulture", action = "Index", id = UrlParameter.Optional });
            ///通过XML 配置Url 模板
            MvcRouteConfigurationSection section =
                (MvcRouteConfigurationSection)ConfigurationManager.GetSection("RouteConfiguration");

            routes.MapRoute(section);
        }