示例#1
0
        public static void Initialize()
        {
            WebPageRazorHost.AddGlobalImport("MvcSiteMapProvider.Web.Html");
            WebPageRazorHost.AddGlobalImport("MvcSiteMapProvider.Web.Html.Models");

            var settings = new ConfigurationSettings();

            if (settings.EnableSiteMapFile)
            {
                var validator = new SiteMapXmlValidator();
                validator.ValidateXml(HostingEnvironment.MapPath(settings.SiteMapFileName));
            }

            if (DependencyResolver.Current.GetType().FullName.Equals("System.Web.Mvc.DependencyResolver+DefaultDependencyResolver"))
            {
                var currentFactory = ControllerBuilder.Current.GetControllerFactory();
                ControllerBuilder.Current.SetControllerFactory(
                    new ControllerFactoryDecorator(currentFactory, settings));
            }
            else
            {
                var currentResolver = DependencyResolver.Current;
                DependencyResolver.SetResolver(new DependencyResolverDecorator(currentResolver, settings));
            }

            var siteMapLoaderContainer = new CustomSiteMapLoaderContainer(settings);

            SiteMaps.Loader = siteMapLoaderContainer.ResolveSiteMapLoader();

            if (settings.EnableSitemapsXml)
            {
                XmlSiteMapController.RegisterRoutes(RouteTable.Routes);
            }
        }
示例#2
0
        protected void Application_Start()
        {

            ModelBinders.Binders.Add(typeof(DateTime?), new PersianDateModelBinder());

            //Database.SetInitializer<IrisDbContext>(null);
            Database.SetInitializer(new MigrateDatabaseToLatestVersion<IrisDbContext, Configuration>());

            ControllerBuilder.Current.SetControllerFactory(new StructureMapControllerFactory());


            XmlSiteMapController.RegisterRoutes(RouteTable.Routes); // <-- register sitemap.xml, add this line of code

            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            // Remove Extra ViewEngins
            ViewEngines.Engines.Clear();
            ViewEngines.Engines.Add(new RazorViewEngine());
            MvcHandler.DisableMvcResponseHeader = true;
            CaptchaUtils.CaptchaManager.StorageProvider = new CookieStorageProvider();
        }
示例#3
0
        protected void Application_Start()
        {
            //MiniProfilerEF.InitializeEF42();
            FluentValidationModelValidatorProvider.Configure();
            System.Web.Mvc.ModelBinders.Binders.Add(typeof(decimal?), new DecimalBinder());
            ModelBinders.Binders.Add(typeof(DateTime?), new PersianDateModelBinder());
            ModelBinders.Binders.DefaultBinder = new CustomModelBinder();

            //Database.SetInitializer<MyCMSDbContext>(null);
            Database.SetInitializer(new MigrateDatabaseToLatestVersion <MyCMSDbContext, Configuration>());


            XmlSiteMapController.RegisterRoutes(RouteTable.Routes); // <-- register sitemap.xml, add this line of code

            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            AutoMapperConfig.Config();

            DbInterception.Add(new YeKeInterceptor());
            // Remove Extra ViewEngins
            ViewEngines.Engines.Clear();
            ViewEngines.Engines.Add(new RazorViewEngine());
            ViewEngines.Engines.Add(new PhpViewEngine());

            MvcHandler.DisableMvcResponseHeader         = true;
            CaptchaUtils.CaptchaManager.StorageProvider = new CookieStorageProvider();
            ReindexingPages = true;
            ReindexingPosts = true;
        }
示例#4
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            // Register XmlSiteMapController
            XmlSiteMapController.RegisterRoutes(RouteTable.Routes);

            RegisterRoutes(RouteTable.Routes);
        }
示例#5
0
        public static void Compose()
        {
#if !MVC2
            // Register global namespaces with Razor so we don't have to import them in Web.config
            WebPageRazorHost.AddGlobalImport("MvcSiteMapProvider.Web.Html");
            WebPageRazorHost.AddGlobalImport("MvcSiteMapProvider.Web.Html.Models");
#endif

            // Get the configuration settings
            var settings = new ConfigurationSettings();

            // If the config specifies to use an external DI container, skip the internal container.
            if (!settings.UseExternalDIContainer)
            {
                if (settings.EnableSiteMapFile)
                {
                    // Validate the Xml File.
                    var validator = new SiteMapXmlValidator();
                    validator.ValidateXml(HostingEnvironment.MapPath(settings.SiteMapFileName));
                }

#if !MVC2
                // If not using a custom DependencyResolver, we prefer to use IControllerFactory
                if (DependencyResolver.Current.GetType().FullName.Equals("System.Web.Mvc.DependencyResolver+DefaultDependencyResolver"))
                {
#endif
                // Setup the Controller Factory with a decorator that can resolve the internal controllers
                var currentFactory = ControllerBuilder.Current.GetControllerFactory();
                ControllerBuilder.Current.SetControllerFactory(
                    new ControllerFactoryDecorator(currentFactory, settings));
#if !MVC2
            }
            else
            {
                // If using a custom IDependencyResolver, decorate it with our IDependencyResolver so we can resolve
                // our internal controller.
                var currentResolver = DependencyResolver.Current;
                DependencyResolver.SetResolver(new DependencyResolverDecorator(currentResolver, settings));
            }
#endif

                // Set the static loader instance
                var siteMapLoaderContainer = new SiteMapLoaderContainer(settings);
                SiteMaps.Loader = siteMapLoaderContainer.ResolveSiteMapLoader();

                if (settings.EnableSitemapsXml)
                {
                    // Register the route for SiteMaps XML
                    XmlSiteMapController.RegisterRoutes(RouteTable.Routes);
                }
            }
        }
    public static void Register(IDependencyInjectionContainer container)
    {
// Setup global sitemap loader
        MvcSiteMapProvider.SiteMaps.Loader = container.GetInstance <ISiteMapLoader>();

// Check all configured .sitemap files to ensure they follow the XSD for MvcSiteMapProvider
        var validator = container.GetInstance <ISiteMapXmlValidator>();

        validator.ValidateXml(HostingEnvironment.MapPath("~/Mvc.sitemap"));

// Register the Sitemaps routes for search engines
        XmlSiteMapController.RegisterRoutes(RouteTable.Routes);
    }
示例#7
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            XmlSiteMapController.RegisterRoutes(RouteTable.Routes); // <-- register sitemap.xml, add this line of code
            //RegisterRoutes(RouteTable.Routes);

            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            Helper.CheckDirectorysOnServer(new string[] { Server.MapPath("~/Images/Uploaded/"), Server.MapPath("~/Images/Uploaded/Temporary/") });
            Application["onlinevisitors"] = 0;
        }
示例#8
0
        protected void Application_Start()
        {
            GlobalFilters.Filters.Add(new Legato.Helpers.CustomHandleErrorAttribute());

            AreaRegistration.RegisterAllAreas();

            XmlSiteMapController.RegisterRoutes(RouteTable.Routes); // register sitemap.xml

            RegisterRoutes(RouteTable.Routes);

            InitProfilerSettings();

            // Route Debugger: to use, uncomment this line:
            //RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes);
        }
示例#9
0
        public static void Register(IUnityContainer container)
        {
            Mvc5Application1ContainerExtension.Initialize(container);

            // Setup global sitemap loader
            SiteMaps.Loader = container.Resolve <ISiteMapLoader>();

            // Check all configured .sitemap files to ensure they follow the XSD for MvcSiteMapProvider
            var validator = container.Resolve <ISiteMapXmlValidator>();

            validator.ValidateXml(HostingEnvironment.MapPath("~/Mvc.sitemap"));

            // Register the Sitemaps routes for search engines
            XmlSiteMapController.RegisterRoutes(RouteTable.Routes);
        }
示例#10
0
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });

            routes.IgnoreRoute("{folder}/{*pathInfo}", new { folder = "Content" });

            XmlSiteMapController.RegisterRoutes(RouteTable.Routes);

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                namespaces: new[] { "MusicStore.Controllers.Controllers.Home" }
                );
        }
示例#11
0
        private static void MvcSiteMapProviderDiConfiguration()
        {
            // Create the DI container (typically part of your DI setup already)
            var container = new WindsorContainer();

            // Setup configuration of DI
            container.Install(new MvcSiteMapProviderInstaller()); // Required

            container.Install(new MvcInstaller());                // Required by MVC. Typically already part of your setup (double check the contents of the module).

            // setup global sitemap loader (required)
            SiteMaps.Loader = container.Resolve <ISiteMapLoader>();

            //check all configured .sitemap files to ensure they follow the XSD for MvcSiteMapProvider(optional)
            var validator = container.Resolve <ISiteMapXmlValidator>();

            validator.ValidateXml(HostingEnvironment.MapPath("~/Mvc.sitemap"));

            //Register the Sitemaps routes for search engines (optional)
            XmlSiteMapController.RegisterRoutes(RouteTable.Routes);
        }
示例#12
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            XmlSiteMapController.RegisterRoutes(RouteTable.Routes);

            MvcHandler.DisableMvcResponseHeader = true;

            // http://haacked.com/archive/2011/07/14/model-metadata-and-validation-localization-using-conventions.aspx
            ModelMetadataProviders.Current = new ConventionalModelMetadataProvider(false);

            // Allows cache to be cleared programmicatically
            // http://stackoverflow.com/questions/11585/clearing-page-cache-in-asp-net/2876701#2876701
            HttpRuntime.Cache.Insert("Pages", DateTime.Now);

            // This doesn't seem to work. Just fires randomly
            //ScheduledTaskService.AddCheckForLateMatchResultsTask();

            EntityFrameworkConfiguration.SetInitializer();

            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);
        }
示例#13
0
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
            routes.IgnoreRoute("favicon.ico");
            XmlSiteMapController.RegisterRoutes(routes);
            routes.MapRoute(
                name: "Thumbnail",
                url: "Gallery/Thumbnail/{id}",
                defaults: new { controller = "Gallery", action = "Thumbnail", id = UrlParameter.Optional });
            routes.MapRoute(
                name: "Image",
                url: "Gallery/Image/{id}",
                defaults: new { controller = "Gallery", action = "Image", id = UrlParameter.Optional });
            routes.MapRoute(
                name: "Pages",
                url: "Page/{relativeUrl}",
                defaults: new { controller = "Page", action = "GetPage", relativeUrl = UrlParameter.Optional });
            routes.MapRoute(
                name: "SetAlbumWatermark",
                url: "api/album/{albumId}/{watermarkImageId}/watermark/set",
                defaults: new { controller = "Gallery", action = "SetAlbumWatermark" });
            routes.MapRoute(
                name: "RemoveAlbumWatermark",
                url: "api/album/{albumId}/watermark/remove",
                defaults: new { controller = "Gallery", action = "RemoveAlbumWatermark" });
            routes.MapRoute(
                name: "FileWithExt",
                url: "File/Get/{fileName}.{ext}",
                defaults: new { controller = "File", action = "Get" });
            routes.MapRoute(
                name: "DeleteFile",
                url: "File/Delete/{fileName}.{ext}",
                defaults: new { controller = "File", action = "DeleteFile" });
            routes.MapRoute(
                name: "Login",
                url: "login",
                defaults: new { controller = "Home", action = "Login" });
            routes.MapRoute(
                name: "Register",
                url: "register",
                defaults: new { controller = "Home", action = "Register" });

            routes.MapRoute(
                name: "EditPage",
                url: "Admin/EditPage/{relativeUrl}",
                defaults: new { controller = "Admin", action = "EditPage" });
            routes.MapRoute(
                name: "Search",
                url: "search",
                defaults: new { controller = "Home", action = "Search" });
            routes.MapRoute(
                name: "ForgotPassword",
                url: "forgotpassword",
                defaults: new { controller = "Home", action = "ForgotPassword" });
            routes.MapRoute(
                name: "RestorePassword",
                url: "restorepassword/{token}",
                defaults: new { controller = "Home", action = "RestorePassword" });
            routes.MapRoute(
                name: "AcceptPayment",
                url: "acceptpayment/{id}",
                defaults: new { controller = "FormRequest", action = "PaymentAccepted" });

            IEnumerable <string> controllerNames = typeof(MvcApplication).Assembly.GetTypes()
                                                   .Where(t => t.Name.EndsWith("Controller"))
                                                   .Where(t => !t.IsAbstract)
                                                   .Select(t => $"^{t.Name.Replace("Controller", "")}$");
            string constraint = String.Join("|", controllerNames);

            routes.MapRoute(
                name: "DefaultCore",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                constraints: new { controller = constraint }
                );
            //RegisterIndexRoute(routes);
            RoutingHelper.RegisterHeartRoute(routes, typeof(Page), "Page", "PageSEF");



            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
                );


            routes.MapRoute(
                name: "PageSEF5",
                url: "{*relativeUrl}",
                defaults: new { controller = "Page", action = "PageSEF" }
                );
        }