private void ga_UrlRoutingAdd(System.Web.Routing.RouteCollection routes, EventArgs e)
 {
     routes.Add(new Route("data/{FeedType}", new FeedRouteHandler()));
     routes.Add(new Route("data/{FeedType}/{CategoryName}/{Feed}", new FeedRouteHandler()));
     routes.Add(new Route("data/{FeedType}/{CategoryName}/{Feed}/default.aspx", new FeedRouteHandler()));
     routes.Add(new Route("download/{PostID}", new DownloadRouteHandler()));
 }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="routes"></param>
        /// <param name="name"></param>
        /// <param name="protocol"></param>
        /// <param name="domain"></param>
        /// <param name="port"></param>
        /// <param name="url"></param>
        /// <param name="defaults"></param>
        /// <param name="constraints"></param>
        /// <param name="namespaces"></param>
        /// <returns></returns>
        public static Route MapDomainRoute(this System.Web.Routing.RouteCollection routes, string name, string protocol, string domain, int port, string url, object defaults, object constraints, string[] namespaces)
        {
            if (routes == null)
            {
                throw new ArgumentNullException("routes");
            }
            if (domain == null)
            {
                throw new ArgumentNullException("domain");
            }
            if (url == null)
            {
                throw new ArgumentNullException("url");
            }
            Route route = new DomainRoute(domain, url, new MvcRouteHandler())
            {
                Defaults    = RouteValueDictionaryHelper.CreateRouteValueDictionary(defaults),
                Constraints = RouteValueDictionaryHelper.CreateRouteValueDictionary(constraints),
                DataTokens  = new RouteValueDictionary(),
                Protocol    = protocol,
                Port        = port,
            };

            if (namespaces.IsNotNullOrEmpty())
            {
                route.DataTokens["Namespaces"] = namespaces;
            }
            routes.Add(name, route);
            return(route);
        }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="routes"></param>
        /// <param name="name"></param>
        /// <param name="protocol"></param>
        /// <param name="domain"></param>
        /// <param name="port"></param>
        /// <param name="url"></param>
        /// <param name="physicalFile"></param>
        /// <param name="checkPhysicalUrlAccess"></param>
        /// <param name="defaults"></param>
        /// <param name="constraints"></param>
        /// <param name="dataTokens"></param>
        /// <returns></returns>
        public static Route MapDomainPageRoute(this System.Web.Routing.RouteCollection routes, string name, string protocol, string domain, int port, string url, string physicalFile, bool checkPhysicalUrlAccess, object defaults, object constraints, object dataTokens)
        {
            if (routes == null)
            {
                throw new ArgumentNullException("routes");
            }
            if (domain == null)
            {
                throw new ArgumentNullException("domain");
            }
            if (url == null)
            {
                throw new ArgumentNullException("url");
            }
            Route route = new DomainRoute(domain, url, new PageRouteHandler(physicalFile, checkPhysicalUrlAccess))
            {
                Defaults    = RouteValueDictionaryHelper.CreateRouteValueDictionary(defaults),
                Constraints = RouteValueDictionaryHelper.CreateRouteValueDictionary(constraints),
                DataTokens  = RouteValueDictionaryHelper.CreateRouteValueDictionary(dataTokens),
                Protocol    = protocol,
                Port        = port,
            };

            routes.Add(name, route);
            return(route);
        }
Example #4
0
//-------------------------------------------------------------------------------------------
    public static void RegisterDynamicDataRoutes(System.Web.Routing.RouteCollection routes)
    {
        DefaultModel.FieldTemplateFactory = new SecureFieldTemplateFactory();
        ContextConfiguration config = new ContextConfiguration()
        {
            ScaffoldAllTables = true
        };

        DefaultModel.RegisterContext(typeof(Weavver.Data.WeavverEntityContainer), config);
        DefaultModel.RegisterContext(typeof(Weavver.Workflows.WorkflowContainer), config);

        // separate page mode
        routes.Add(new DynamicDataRoute("{table}/{action}.aspx")
        {
            Constraints  = new System.Web.Routing.RouteValueDictionary(new { action = "BlogRoll|PressRoll|StoreItem|Showcase|Page|XML|List|Details|Insert|ListDetails|CSV|Edit" }),
            RouteHandler = new SecureDynamicDataRouteHandler(),
            Model        = DefaultModel
        });

        //routes.Add(new DynamicDataRoute("{table}/{action}.aspx")
        //{
        //     Constraints = new System.Web.Routing.RouteValueDictionary(new { action =  }),
        //     RouteHandler = new DynamicDataRouteHandler(),
        //     Model = DefaultModel
        //});

        // combined page mode
        routes.Add(new DynamicDataRoute("{table}/KnowledgeBase.aspx")
        {
            Action       = PageAction.List,
            RouteHandler = new DynamicDataRouteHandler(),
            ViewName     = "KnowledgeBase",
            Model        = DefaultModel
        });

        //routes.Add(new DynamicDataRoute("{table}/ListDetails.aspx")
        //{
        //     Action = PageAction.List,
        //     RouteHandler = new SecureDynamicDataRouteHandler(),
        //     ViewName = "ListDetails",
        //     Model = DefaultModel
        //});
    }
Example #5
0
        public override void AddRoutesTo(System.Web.Routing.RouteCollection routeCollection)
        {
            var routes = new RouteCollection();

            new TArea().RegisterRoutes(routes);
            foreach (var route in routes.Select(x => (Route)x))
            {
                route.Url = pathPrefix + route.Url;
                routeCollection.Add(route);
            }
        }
Example #6
0
 /// <summary>
 /// 注册路由
 /// </summary>
 /// <param name="routes">RouteCollection</param>
 public static void RegisterPageRoutes(System.Web.Routing.RouteCollection routes)
 {
     foreach (FileRouteElement route in YuYuWebConfigurationSectionGroup.YuYuFileRouteCollectionConfigurationSection.Routes.RouteElements)
     {
         RouteValueDictionary defaults    = RouteValueDictionaryHelper.CreateRouteValueDictionary(route.Defaults.CreateObject());
         RouteValueDictionary constraints = RouteValueDictionaryHelper.CreateRouteValueDictionary(route.Constraints.CreateObject());
         if (string.IsNullOrWhiteSpace(route.Domain))
         {
             routes.Add(route.Name, new Route(route.Url, defaults, constraints, route.RouteHandler ?? YuYuWebConfigurationSectionGroup.YuYuFileRouteCollectionConfigurationSection.CreateDefaultRouteHandler(route.PhysicalFile, route.CheckPhysicalUrlAccess)));
         }
         else
         {
             routes.Add(route.Name, new DomainRoute(route.Domain, route.Url, route.RouteHandler ?? YuYuWebConfigurationSectionGroup.YuYuFileRouteCollectionConfigurationSection.CreateDefaultRouteHandler(route.PhysicalFile, route.CheckPhysicalUrlAccess))
             {
                 Defaults    = defaults,
                 Constraints = constraints,
                 DataTokens  = new RouteValueDictionary(),
                 Port        = route.Port,
                 Protocol    = route.Protocol,
             });
         }
     }
 }
Example #7
0
        public RouteCollection GetRoutes()
        {
            var rc  = new RouteCollection();
            var cfg = MiniMvcSystem.Config;

            foreach (RouteElement route in cfg.Routes)
            {
                var rd = new RouteValueDictionary {
                    { "controller", route.Controller }, { "action", route.Action }
                };

                rc.Add(route.Name, new Route(route.Url, rd, MiniMvcSystem.GetRouteHandler()));
            }

            return(rc);
        }
        public RouteCollection GetRoutes()
        {
            var rc = new RouteCollection();
            var cfg = MiniMvcSystem.Config;

            foreach (RouteElement route in cfg.Routes)
            {
                var rd = new RouteValueDictionary {
                            {"controller", route.Controller}, {"action", route.Action}
                        };

                rc.Add(route.Name, new Route(route.Url, rd, MiniMvcSystem.GetRouteHandler()));
            }

            return rc;
        }
Example #9
0
        /// <summary>
        /// 注册用于生成静态页的路由
        /// </summary>
        /// <param name="directoryParameterName">文件夹参数名称</param>
        /// <param name="cycleMode">配置此项(MM:每月更新;WW:每周更新;DD:每日更新)用于生成静态路由</param>
        public static void RegisterStaticizeRoutes(string directoryParameterName = "staticizeDirectory", string cycleMode = "DD")
        {
            string folderName = string.Empty;

            if (!string.IsNullOrWhiteSpace(directoryParameterName))
            {
                folderName = DateTime.Now.GetDirectoryName(cycleMode);
            }
            foreach (MvcRouteElement route in YuYuMvcStaticizeRouteCollectionConfigurationSection.Routes.RouteElements)
            {
                RouteValueDictionary defaults    = Helper.CreateRouteValueDictionary(route.Defaults.CreateObject());
                RouteValueDictionary constraints = Helper.CreateRouteValueDictionary(route.Constraints.CreateObject());
                if (!string.IsNullOrWhiteSpace(directoryParameterName))
                {
                    defaults.Add(directoryParameterName, folderName);
                }
                Route item = null;
                if (!string.IsNullOrWhiteSpace(route.Domain))
                {
                    item = new DomainRoute(route.Domain, route.Url, route.RouteHandler)
                    {
                        Defaults    = defaults,
                        Constraints = constraints,
                        DataTokens  = new RouteValueDictionary(),
                        Port        = route.Port,
                        Protocol    = route.Protocol,
                    }
                }
                ;
                else
                {
                    item = new Route(route.Url, route.RouteHandler)
                    {
                        Defaults    = defaults,
                        Constraints = constraints,
                        DataTokens  = new RouteValueDictionary()
                    }
                };
                if (!string.IsNullOrWhiteSpace(route.Namespaces))
                {
                    item.DataTokens["Namespaces"] = route.Namespaces.Split(',');
                }
                StaticizeRoutes.Add(route.Name, item);
            }
        }
Example #10
0
        public void RegisterRoutes(RouteCollection routes)
        {
            RouteSection routesTableSection = GetRouteTableConfigurationSection();

            if (routesTableSection == null || routesTableSection.Routes.Count <= 0)
                return;

            for (int routeIndex = 0; routeIndex < routesTableSection.Routes.Count; routeIndex++)
            {
                var routeElement = routesTableSection.Routes[routeIndex];

                var route = new Route(
                    routeElement.Url,
                    GetDefaults(routeElement),
                    GetConstraints(routeElement),
                    GetDataTokens(routeElement),
                    GetInstanceOfRouteHandler(routeElement));

                routes.Add(routeElement.Name, route);
            }
        }
Example #11
0
        /// <summary>
        /// Registers from configuration route table.
        /// </summary>
        /// <param name="routes">The routes.</param>
        public static void RegisterFromConfigRouteTable(System.Web.Routing.RouteCollection routes)
        {
            var routesTableSection = Configuration.GetRouteTable();

            if (routesTableSection != null && routesTableSection.Routes.Count > 0)
            {
                for (var routeIndex = 0; routeIndex < routesTableSection.Routes.Count; routeIndex++)
                {
                    var route = routesTableSection.Routes[routeIndex];

                    routes.Add(
                        route.Name,
                        new Route(
                            route.Url,
                            GetDefaults(route),
                            GetConstraints(route),
                            GetDataTokens(route),
                            GetInstanceOfRouteHandler(route)
                            ));
                }
            }
        }
Example #12
0
        public static void RegisterConfigurationBundles(this RouteCollection routes)
        {
            RouteConfigurationSection routesTableSection = GetRouteTableConfigurationSection();

            if (routesTableSection == null || routesTableSection.Routes.Count <= 0)
            {
                return;
            }

            for (int routeIndex = 0; routeIndex < routesTableSection.Routes.Count; routeIndex++)
            {
                var routeElement = routesTableSection.Routes[routeIndex];

                var route = new Route(
                    routeElement.Url,
                    GetDefaults(routeElement),
                    GetConstraints(routeElement),
                    GetDataTokens(routeElement),
                    GetInstanceOfRouteHandler(routeElement));

                routes.Add(routeElement.Name, route);
            }
        }
        public static void MapHandlerRoute(this RouteCollection routes, string routeName, string routeUrl, string physicalFile)
        {
            var route = new Route(routeUrl, new HandlerRouteHandler(physicalFile));

            routes.Add(routeName, route);
        }
Example #14
0
 public static void AddApplicationFromAssembly(this RouteCollection routes, string url, Assembly assembly)
 {
     routes.Add(new ApplicationRoute(url, assembly));
 }
Example #15
0
        private static void MapLast(System.Web.Routing.RouteCollection routes, string name, string path, object defaults, string[] namespaces, object constraints = null)
        {
            Route route = CreateRoute(routes, name, path, defaults, constraints);

            routes.Add(route);
        }