示例#1
0
        protected void Application_Start()
        {
            //initialize engine context
            EngineContext.Initialize(false);

            //start schedules tasks
            if (DataSettingsHelper.DatabaseIsInstalled())
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }

            //set dependency resolver
            var dependencyResolver = new NopDependencyResolver();

            DependencyResolver.SetResolver(dependencyResolver);

            //model binders
            ModelBinders.Binders.Add(typeof(BaseNopModel), new NopModelBinder());

            if (DataSettingsHelper.DatabaseIsInstalled())
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new NopMetadataProvider();

            //Registering some regular mvc stuf
            //ViewEngines.Engines.Add(new ThemableRazorViewEngine());
            AreaRegistration.RegisterAllAreas();
            if (DataSettingsHelper.DatabaseIsInstalled() &&
                EngineContext.Current.Resolve <StoreInformationSettings>().DisplayMiniProfilerInPublicStore)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);

            //For debugging
            //RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes);

            DataAnnotationsModelValidatorProvider
            .AddImplicitRequiredAttributeForValueTypes = false;

            ModelValidatorProviders.Providers.Add(
                new FluentValidationModelValidatorProvider(new NopValidatorFactory()));

            //register virtual path provider for embedded views
            var embeddedViewResolver = EngineContext.Current.Resolve <IEmbeddedViewResolver>();
            var embeddedProvider     = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());

            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);
        }
        public override void Spin(IRotorContext context) {
            IServiceLocator serviceLocator = GetServiceLocatorFromContext(context);
            IEmbeddedViewResolver resolver = GetEmbeddedViewResolver(serviceLocator);

            EmbeddedViewTable table = resolver.GetEmbeddedViews();

            var embeddedProvider = new EmbeddedViewVirtualPathProvider(table);
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);
        }
        public override void Spin(IRotorContext context)
        {
            IServiceLocator       serviceLocator = GetServiceLocatorFromContext(context);
            IEmbeddedViewResolver resolver       = GetEmbeddedViewResolver(serviceLocator);

            EmbeddedViewTable table = resolver.GetEmbeddedViews();

            var embeddedProvider = new EmbeddedViewVirtualPathProvider(table);

            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);
        }
示例#4
0
        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();
            RegisterPluginRoute(RouteTable.Routes);

            RouteConfig.RegisterRoutes(RouteTable.Routes);

            var embeddedViewResolver = EngineContext.Current.Resolve<IEmbeddedViewResolver>();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);
        }
        public static void Setup()
        {
            if (_IsConfigured) return;

            var virtualPathProvider = HostingEnvironment.VirtualPathProvider;
            var table = new EmbeddedViewResolver().GetEmbeddedViews();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(table);
            embeddedProvider.SetDefaultVirtualPathProvider(virtualPathProvider);
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            _IsConfigured = true;
        }
示例#6
0
        protected void Application_Start()
        {
            EngineContext.Initialize(false);
            
            var dependencyResolver = new HaloDependencyResolver();
            DependencyResolver.SetResolver(dependencyResolver);

            AreaRegistration.RegisterAllAreas();
            
            RegisterPluginRoute(RouteTable.Routes);
            RouteConfig.RegisterRoutes(RouteTable.Routes);

           
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);

            var embeddedViewResolver = EngineContext.Current.Resolve<IEmbeddedViewResolver>();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);
        }
示例#7
0
文件: Global.asax.cs 项目: code-v/Mem
        protected void Application_Start()
        {
            // Database.SetInitializer(new DropCreateDatabaseIfModelChanges<DataContext>());
            //Database.SetInitializer<MemoryEntities>(null);
            //AreaRegistration.RegisterAllAreas();
            //RegisterGlobalFilters(GlobalFilters.Filters);

            //加载插件
            AppDomainTypeFinder typeFinder = new AppDomainTypeFinder();
            var embeddedViewResolver = new EmbeddedViewResolver(typeFinder);
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            //群体注册服务,所有的继承IDependency接口的类都将被注册
            var builder = RegisterService();

            DependencyResolver.SetResolver(new AutofacDependencyResolver(builder.Build()));

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            RegisterRoutes(RouteTable.Routes);
            AuthConfig.RegisterAuth();
        }
示例#8
0
        protected void Application_Start()
        {
            //we use our own mobile devices support (".Mobile" is reserved). that's why we disable it.
            var mobileDisplayMode = DisplayModeProvider
                                    .Instance
                                    .Modes
                                    .Where(x => x.DisplayModeId == DisplayModeProvider.MobileDisplayModeId)
                                    .FirstOrDefault();

            if (mobileDisplayMode != null)
            {
                DisplayModeProvider.Instance.Modes.Remove(mobileDisplayMode);
            }

            //initialize engine context
            EngineContext.Initialize(false);

            bool databaseInstalled = DataSettingsHelper.DatabaseIsInstalled();

            //set dependency resolver
            var dependencyResolver = new NopDependencyResolver();

            DependencyResolver.SetResolver(dependencyResolver);

            //model binders
            ModelBinders.Binders.Add(typeof(BaseNopModel), new NopModelBinder());
            ModelBinders.Binders.Add(typeof(DateTime), new DateModelBinder());
            ModelBinders.Binders.Add(typeof(DateTime?), new DateModelBinder());
            ModelBinders.Binders.DefaultBinder = new TrimModelBinder();
            if (databaseInstalled)
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new NopMetadataProvider();

            //Registering some regular mvc stuff
            AreaRegistration.RegisterAllAreas();
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);
            //StackExchange profiler
            if (databaseInstalled && EngineContext.Current.Resolve <StoreInformationSettings>().DisplayMiniProfilerInPublicStore)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }

            //fluent validation
            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new NopValidatorFactory()));

            //register virtual path provider for embedded views
            var embeddedViewResolver = EngineContext.Current.Resolve <IEmbeddedViewResolver>();
            var embeddedProvider     = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());

            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            //start scheduled tasks
            if (databaseInstalled)
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }
        }
示例#9
0
        protected void Application_Start()
        {
            //initialize engine context
            EngineContext.Initialize(false);

            bool databaseInstalled = DataSettingsHelper.DatabaseIsInstalled();

            //set dependency resolver
            var dependencyResolver = new NopDependencyResolver();
            DependencyResolver.SetResolver(dependencyResolver);

            //model binders
            ModelBinders.Binders.Add(typeof(BaseNopModel), new NopModelBinder());

            if (databaseInstalled)
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new NopMetadataProvider();

            //Registering some regular mvc stuf
            AreaRegistration.RegisterAllAreas();
            if (databaseInstalled &&
                EngineContext.Current.Resolve<StoreInformationSettings>().DisplayMiniProfilerInPublicStore)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);

            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;

            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new NopValidatorFactory()));

            //register virtual path provider for embedded views
            var embeddedViewResolver = EngineContext.Current.Resolve<IEmbeddedViewResolver>();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            //mobile device support
            if (databaseInstalled)
            {
                if (EngineContext.Current.Resolve<StoreInformationSettings>().MobileDevicesSupported)
                {
                    //Enable the mobile detection provider (if enabled)
                    HttpCapabilitiesBase.BrowserCapabilitiesProvider = new FiftyOne.Foundation.Mobile.Detection.MobileCapabilitiesProvider();
                }
                else
                {
                    //set BrowserCapabilitiesProvider to null because 51Degrees assembly always sets it to MobileCapabilitiesProvider
                    //it'll allow us to use default browserCaps.config file
                    HttpCapabilitiesBase.BrowserCapabilitiesProvider = null;
                }
            }

            //start scheduled tasks
            if (databaseInstalled)
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }
        }
示例#10
0
        protected void Application_Start()
        {
            // we use our own mobile devices support (".Mobile" is reserved). that's why we disable it.
            var mobileDisplayMode = DisplayModeProvider.Instance.Modes.FirstOrDefault(x => x.DisplayModeId == DisplayModeProvider.MobileDisplayModeId);

            if (mobileDisplayMode != null)
            {
                DisplayModeProvider.Instance.Modes.Remove(mobileDisplayMode);
            }

            bool installed = DataSettings.DatabaseIsInstalled();

            if (installed)
            {
                // remove all view engines
                ViewEngines.Engines.Clear();
            }

            // initialize engine context
            EngineContext.Initialize(false);

            // model binders
            ModelBinders.Binders.DefaultBinder = new SmartModelBinder();

            // Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new SmartMetadataProvider();

            // Registering some regular mvc stuff
            AreaRegistration.RegisterAllAreas();

            // fluent validation
            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new SmartValidatorFactory()));

            // Routes
            RegisterRoutes(RouteTable.Routes, installed);

            if (installed)
            {
                var profilingEnabled = this.ProfilingEnabled;

                // register our themeable razor view engine we use
                IViewEngine viewEngine = new ThemeableRazorViewEngine();
                if (profilingEnabled)
                {
                    // ...and wrap, if profiling is active
                    viewEngine = new ProfilingViewEngine(viewEngine);
                    GlobalFilters.Filters.Add(new ProfilingActionFilter());
                }
                ViewEngines.Engines.Add(viewEngine);

                // Global filters
                RegisterGlobalFilters(GlobalFilters.Filters);

                // Bundles
                RegisterBundles(BundleTable.Bundles);

                // register virtual path provider for theme variables
                HostingEnvironment.RegisterVirtualPathProvider(new ThemeVarsVirtualPathProvider(HostingEnvironment.VirtualPathProvider));
                BundleTable.VirtualPathProvider = HostingEnvironment.VirtualPathProvider;

                // register virtual path provider for embedded views
                var embeddedViewResolver = EngineContext.Current.Resolve <IEmbeddedViewResolver>();
                var embeddedProvider     = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
                HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

                // start scheduled tasks
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }
            else
            {
                // app not installed

                // Install filter
                GlobalFilters.Filters.Add(new HandleInstallFilter());
            }
        }
示例#11
0
        protected void Application_Start()
        {
            EngineContext.Initialize(false);


            if (DataSettingsHelper.DatabaseIsInstalled())
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }


            var dependencyResolver = new FaraDependencyResolver();

            DependencyResolver.SetResolver(dependencyResolver);


            ModelBinders.Binders.Add(typeof(BaseFaraModel), new FaraModelBinder());

            if (DataSettingsHelper.DatabaseIsInstalled())
            {
                ViewEngines.Engines.Clear();

                ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }


            ModelMetadataProviders.Current = new FaraMetadataProvider();


            AreaRegistration.RegisterAllAreas();
            if (DataSettingsHelper.DatabaseIsInstalled() &&
                EngineContext.Current.Resolve <StoreInformationSettings>().DisplayMiniProfilerInPublicStore)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);



            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;

            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new FaraValidatorFactory()));


            var embeddedViewResolver = EngineContext.Current.Resolve <IEmbeddedViewResolver>();
            var embeddedProvider     = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());

            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            if (DataSettingsHelper.DatabaseIsInstalled())
            {
                if (EngineContext.Current.Resolve <StoreInformationSettings>().MobileDevicesSupported)
                {
                    HttpCapabilitiesBase.BrowserCapabilitiesProvider = new FiftyOne.Foundation.Mobile.Detection.MobileCapabilitiesProvider();
                }
                else
                {
                    HttpCapabilitiesBase.BrowserCapabilitiesProvider = null;
                }
            }
        }
示例#12
0
        protected void Application_Start()
        {
            //we use our own mobile devices support (".Mobile" is reserved). that's why we disable it.
            var mobileDisplayMode = DisplayModeProvider
                .Instance
                .Modes
                .Where(x => x.DisplayModeId == DisplayModeProvider.MobileDisplayModeId)
                .FirstOrDefault();
            if (mobileDisplayMode != null)
                DisplayModeProvider.Instance.Modes.Remove(mobileDisplayMode);

            //initialize engine context
            EngineContext.Initialize(false);

            bool databaseInstalled = DataSettingsHelper.DatabaseIsInstalled();

            //set dependency resolver
            var dependencyResolver = new NopDependencyResolver();
            DependencyResolver.SetResolver(dependencyResolver);

            //model binders
            ModelBinders.Binders.Add(typeof(BaseNopModel), new NopModelBinder());

            if (databaseInstalled)
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new NopMetadataProvider();

            //Registering some regular mvc stuff
            AreaRegistration.RegisterAllAreas();
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);
            //StackExchange profiler
            if (databaseInstalled && EngineContext.Current.Resolve<StoreInformationSettings>().DisplayMiniProfilerInPublicStore)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }

            //fluent validation
            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new NopValidatorFactory()));

            //register virtual path provider for embedded views
            var embeddedViewResolver = EngineContext.Current.Resolve<IEmbeddedViewResolver>();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            //start scheduled tasks
            if (databaseInstalled)
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }
        }
示例#13
0
        protected void Application_Start()
        {
            //initialize engine context
            EngineContext.Initialize(false);

            bool databaseInstalled = DataSettingsHelper.DatabaseIsInstalled();

            //set dependency resolver
            var dependencyResolver = new SiteDependencyResolver();
            DependencyResolver.SetResolver(dependencyResolver);

            //model binders
            ModelBinders.Binders.Add(typeof(BaseModel), new SiteModelBinder());

            if (databaseInstalled)
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new SiteMetadataProvider();

            //Registering some regular mvc stuf
            AreaRegistration.RegisterAllAreas();

            /*if (databaseInstalled &&
                EngineContext.Current.Resolve<SiteInformationSettings>().DisplayMiniProfilerInPublicSite)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }*/
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);

            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;

            FluentValidationModelValidatorProvider.Configure(
                provider =>
                {

                    provider.AddImplicitRequiredValidator = false;
                    provider.ValidatorFactory = new SiteValidatorFactory();

                    // add custom validators
                    provider.Add(typeof(IsCheckedPropertyValidator), (metadata, context, rule, validator) =>
                        new IsCheckedFluentValidationPropertyValidator(metadata, context, rule, validator));

                    provider.Add(typeof(IsUniquePropertyValidator), (metadata, context, rule, validator) =>
                        new IsUniqueFluentValidationPropertyValidator(metadata, context, rule, validator));

                    provider.Add(typeof(NotMatchesPropertyValidator), (metadata, context, rule, validator) =>
                        new NotMatchesFluentValidationPropertyValidator(metadata, context, rule, validator));
                }
            );

            //register virtual path provider for embedded views
            var embeddedViewResolver = EngineContext.Current.Resolve<IEmbeddedViewResolver>();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            //mobile device support - will requried to be added later

            //start scheduled tasks
            if (databaseInstalled)
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }
        }
示例#14
0
        protected void Application_Start()
        {	
			// we use our own mobile devices support (".Mobile" is reserved). that's why we disable it.
			var mobileDisplayMode = DisplayModeProvider.Instance.Modes.FirstOrDefault(x => x.DisplayModeId == DisplayModeProvider.MobileDisplayModeId);
            if (mobileDisplayMode != null)
                DisplayModeProvider.Instance.Modes.Remove(mobileDisplayMode);

			bool installed = DataSettings.DatabaseIsInstalled();

			if (installed)
			{
				// remove all view engines
				ViewEngines.Engines.Clear();
			}

            // initialize engine context
            EngineContext.Initialize(false);        

            // model binders
            ModelBinders.Binders.DefaultBinder = new SmartModelBinder();

            // Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new SmartMetadataProvider();

            // Registering some regular mvc stuff
            AreaRegistration.RegisterAllAreas();
            
            // fluent validation
            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new SmartValidatorFactory()));

			// Routes
			RegisterRoutes(RouteTable.Routes, installed);

			if (installed)
			{
				var profilingEnabled = this.ProfilingEnabled;
				
				// register our themeable razor view engine we use
				IViewEngine viewEngine = new ThemeableRazorViewEngine();
				if (profilingEnabled)
				{
					// ...and wrap, if profiling is active
					viewEngine = new ProfilingViewEngine(viewEngine);
					GlobalFilters.Filters.Add(new ProfilingActionFilter());
				}
				ViewEngines.Engines.Add(viewEngine);

				// Global filters
				RegisterGlobalFilters(GlobalFilters.Filters);
				
				// Bundles
				RegisterBundles(BundleTable.Bundles);

				// register virtual path provider for theme variables
				HostingEnvironment.RegisterVirtualPathProvider(new ThemeVarsVirtualPathProvider(HostingEnvironment.VirtualPathProvider));
				BundleTable.VirtualPathProvider = HostingEnvironment.VirtualPathProvider;

				// register virtual path provider for embedded views
				var embeddedViewResolver = EngineContext.Current.Resolve<IEmbeddedViewResolver>();
				var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
				HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

				// start scheduled tasks
				TaskManager.Instance.Initialize();
				TaskManager.Instance.Start();
			}
			else
			{
				// app not installed

				// Install filter
				GlobalFilters.Filters.Add(new HandleInstallFilter());
			}

        }
示例#15
0
        protected void Application_Start()
        {
            //initialize engine context
            EngineContext.Initialize(false);

            bool databaseInstalled = DataSettingsHelper.DatabaseIsInstalled();

            //set dependency resolver
            var dependencyResolver = new NopDependencyResolver();

            DependencyResolver.SetResolver(dependencyResolver);

            //model binders
            ModelBinders.Binders.Add(typeof(BaseNopModel), new NopModelBinder());

            if (databaseInstalled)
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new NopMetadataProvider();

            //Registering some regular mvc stuf
            AreaRegistration.RegisterAllAreas();
            if (databaseInstalled &&
                EngineContext.Current.Resolve <StoreInformationSettings>().DisplayMiniProfilerInPublicStore)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);

            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;

            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new NopValidatorFactory()));

            //register virtual path provider for embedded views
            var embeddedViewResolver = EngineContext.Current.Resolve <IEmbeddedViewResolver>();
            var embeddedProvider     = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());

            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            //mobile device support
            if (databaseInstalled)
            {
                if (EngineContext.Current.Resolve <StoreInformationSettings>().MobileDevicesSupported)
                {
                    //Enable the mobile detection provider (if enabled)
                    HttpCapabilitiesBase.BrowserCapabilitiesProvider = new FiftyOne.Foundation.Mobile.Detection.MobileCapabilitiesProvider();
                }
                else
                {
                    //set BrowserCapabilitiesProvider to null because 51Degrees assembly always sets it to MobileCapabilitiesProvider
                    //it'll allow us to use default browserCaps.config file
                    HttpCapabilitiesBase.BrowserCapabilitiesProvider = null;
                }
            }

            //start scheduled tasks
            if (databaseInstalled)
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }
        }
        protected void Application_Start()
        {
            //MiniProfilerEF.Initialize_EF42();

            AaronManager.Initialize(false);

            var databaseIsInstalled = DataHelper.DatabaseIsExisted();

            var dependencyResolver = new AaronDependencyResolver();
            DependencyResolver.SetResolver(dependencyResolver);

            ModelBinders.Binders.Add(typeof(BaseModel), new AaronModelBinder());

            if (databaseIsInstalled)
            {
                //remove all view engines
                System.Web.Mvc.ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                System.Web.Mvc.ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new AaronMetadataProvider();

            AreaRegistration.RegisterAllAreas();
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);

            //fluent validation
            DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
            ModelValidatorProviders.Providers.Add(new FluentValidationModelValidatorProvider(new AaronValidatorFactory()));

            //register virtual path provider for embedded views
            var embeddedViewResolver = IoC.Resolve<IEmbeddedViewResolver>();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);

            if (databaseIsInstalled)
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }

            CustomApplication_Start();
        }
示例#17
0
        protected void Application_Start()
        {
            //initialize engine context
            EngineContext.Default = new KoreWebEngine();
            EngineContext.Initialize(false);

            RouteTable.Routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
            RouteTable.Routes.IgnoreRoute("Content/{*pathInfo}");
            RouteTable.Routes.IgnoreRoute("Media/{*pathInfo}");
            RouteTable.Routes.IgnoreRoute("Scripts/{*pathInfo}");
            //RouteTable.Routes.IgnoreRoute("Styles/{*pathInfo}");
            RouteTable.Routes.IgnoreRoute("Images/{*pathInfo}");
            RouteTable.Routes.IgnoreRoute("favicon.ico");

            //we use our own mobile devices support (".Mobile" is reserved). that's why we disable it.
            var mobileDisplayMode = DisplayModeProvider.Instance.Modes
                                    .FirstOrDefault(x => x.DisplayModeId == DisplayModeProvider.MobileDisplayModeId);

            if (mobileDisplayMode != null)
            {
                DisplayModeProvider.Instance.Modes.Remove(mobileDisplayMode);
            }

            //initialize engine context
            //EngineContext.Initialize(false);
            OnBeforeApplicationStart();

            //set dependency resolver
            var dependencyResolver = new KoreDependencyResolver();

            DependencyResolver.SetResolver(dependencyResolver);

            if (DataSettingsHelper.IsDatabaseInstalled)
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemeableRazorViewEngine());
            }

            //register virtual path provider for embedded views
            var embeddedResourceResolver = EngineContext.Current.Resolve <IEmbeddedResourceResolver>();

            var embeddedViewProvider = new EmbeddedViewVirtualPathProvider(embeddedResourceResolver.Views);

            HostingEnvironment.RegisterVirtualPathProvider(embeddedViewProvider);

            var embeddedScriptsProvider = new EmbeddedScriptVirtualPathProvider(embeddedResourceResolver.Scripts);

            HostingEnvironment.RegisterVirtualPathProvider(embeddedScriptsProvider);

            var embeddedStylesProvider = new EmbeddedStyleVirtualPathProvider(embeddedResourceResolver.Styles);

            HostingEnvironment.RegisterVirtualPathProvider(embeddedStylesProvider);

            //
            // Register Virtual Path Providers
            //
            if (HostingEnvironment.IsHosted)
            {
                foreach (var vpp in EngineContext.Current.ResolveAll <IKoreVirtualPathProvider>())
                {
                    HostingEnvironment.RegisterVirtualPathProvider(vpp.Instance);
                }
            }

            FilterProviders.Providers.Add(new KoreFilterProvider());

            if (DataSettingsHelper.IsDatabaseInstalled && KoreConfigurationSection.Instance.ScheduledTasks.Enabled)
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }

            OnApplicationStart();
        }
示例#18
0
        protected void Application_Start()
        {
            //initialize engine context
            EngineContext.Initialize(false);

            //start schedules tasks
            if (DataSettingsHelper.DatabaseIsInstalled())
            {
                TaskManager.Instance.Initialize();
                TaskManager.Instance.Start();
            }

            //set dependency resolver
            var dependencyResolver = new NopDependencyResolver();
            DependencyResolver.SetResolver(dependencyResolver);

            //model binders
            ModelBinders.Binders.Add(typeof(BaseNopModel), new NopModelBinder());

            if (DataSettingsHelper.DatabaseIsInstalled())
            {
                //remove all view engines
                ViewEngines.Engines.Clear();
                //except the themeable razor view engine we use
                ViewEngines.Engines.Add(new ThemableRazorViewEngine());
            }

            //Add some functionality on top of the default ModelMetadataProvider
            ModelMetadataProviders.Current = new NopMetadataProvider();

            //Registering some regular mvc stuf
            //ViewEngines.Engines.Add(new ThemableRazorViewEngine());
            AreaRegistration.RegisterAllAreas();
            if (DataSettingsHelper.DatabaseIsInstalled() &&
                EngineContext.Current.Resolve<StoreInformationSettings>().DisplayMiniProfilerInPublicStore)
            {
                GlobalFilters.Filters.Add(new ProfilingActionFilter());
            }
            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);

            //For debugging
            //RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes);

            DataAnnotationsModelValidatorProvider
                .AddImplicitRequiredAttributeForValueTypes = false;

            ModelValidatorProviders.Providers.Add(
                new FluentValidationModelValidatorProvider(new NopValidatorFactory()));

            //register virtual path provider for embedded views
            var embeddedViewResolver = EngineContext.Current.Resolve<IEmbeddedViewResolver>();
            var embeddedProvider = new EmbeddedViewVirtualPathProvider(embeddedViewResolver.GetEmbeddedViews());
            HostingEnvironment.RegisterVirtualPathProvider(embeddedProvider);
        }