コード例 #1
0
        protected void Application_Start(object sender, EventArgs args)
        {
            GlobalConfiguration.Configure(config =>
            {
                var configuration = new TerrificNetHostConfiguration
                {
                    Applications = new Dictionary<string, TerrificNetApplicationConfiguration>
                    {
                        { "administration", new TerrificNetApplicationConfiguration
                        {
                            BasePath = "zip://Web.zip/Web",
                            ApplicationName = "administration",
                            Section = "web/"
                        } 
                        },
                        { "application", new TerrificNetApplicationConfiguration
                        {
                            BasePath = "",
                            ApplicationName = "application",
                            Section = ""
                        }}
                    }
                };

	            var serverConfiguration = ServerConfiguration.LoadConfiguration(this.Server.MapPath("/server.json"));
                var container = WebInitializer.Initialize(this.Server.MapPath("/"), configuration, serverConfiguration);
				
				container.RegisterType<IModelTypeProvider, DummyModelTypeProvider>();

                new Startup().Configuration(container, config);
            });
            RouteTable.Routes.RouteExistingFiles = true;
        }
コード例 #2
0
        protected void Application_Start(object sender, EventArgs args)
        {
            GlobalConfiguration.Configure(config =>
            {
                var configuration = new TerrificNetHostConfiguration
                {
                    Applications = new Dictionary <string, TerrificNetApplicationConfiguration>
                    {
                        { "administration", new TerrificNetApplicationConfiguration
                          {
                              BasePath        = "zip://Web.zip/Web",
                              ApplicationName = "administration",
                              Section         = "web/"
                          } },
                        { "application", new TerrificNetApplicationConfiguration
                          {
                              BasePath        = "",
                              ApplicationName = "application",
                              Section         = ""
                          } }
                    }
                };

                var serverConfiguration = ServerConfiguration.LoadConfiguration(this.Server.MapPath("/server.json"));
                var container           = WebInitializer.Initialize(this.Server.MapPath("/"), configuration, serverConfiguration);

                container.RegisterType <IModelTypeProvider, DummyModelTypeProvider>();

                new Startup().Configuration(container, config);
            });
            RouteTable.Routes.RouteExistingFiles = true;
        }
コード例 #3
0
        public static UnityContainer Initialize(string path, TerrificNetHostConfiguration configuration, ServerConfiguration serverConfiguration)
        {
            var container = new UnityContainer();

            container.RegisterType <ITerrificTemplateHandler, DefaultTerrificTemplateHandler>();
            container
            .RegisterType
            //<ITerrificTemplateHandlerFactory, GenericUnityTerrificTemplateHandlerFactory<DefaultTerrificTemplateHandler>>();
            <ITerrificTemplateHandlerFactory, GenericUnityTerrificTemplateHandlerFactory <PageEditDefaultTerrificTemplateHandler> >();
            container.RegisterType <INamingRule, NamingRule>();
            container.RegisterInstance(serverConfiguration);

            new DefaultUnityModule().Configure(container);

#if DEBUG
            container.RegisterInstance <IFileSystem>(new FileSystem(path));
#else
            container.RegisterInstance <IFileSystem>(new EmbeddedResourceFileSystem(typeof(WebInitializer).Assembly));
#endif

            foreach (var item in configuration.Applications.Values)
            {
                var childContainer = container.CreateChildContainer();

                var app = DefaultUnityModule.RegisterForApplication(childContainer, path, item.BasePath,
                                                                    item.ApplicationName, item.Section);
                container.RegisterInstance(item.ApplicationName, app);
            }

            foreach (var app in container.ResolveAll <TerrificNetApplication>())
            {
                foreach (var template in app.Container.Resolve <ITemplateRepository>().GetAll())
                {
                    Console.WriteLine(template.Id);
                }
            }

            new TerrificBundleUnityModule().Configure(container);
            return(container);
        }
コード例 #4
0
		public static UnityContainer Initialize(string path, TerrificNetHostConfiguration configuration, ServerConfiguration serverConfiguration)
		{
			var container = new UnityContainer();
		    container.RegisterType<ITerrificTemplateHandler, DefaultTerrificTemplateHandler>();
			container 
				.RegisterType
				//<ITerrificTemplateHandlerFactory, GenericUnityTerrificTemplateHandlerFactory<DefaultTerrificTemplateHandler>>();
				<ITerrificTemplateHandlerFactory, GenericUnityTerrificTemplateHandlerFactory<PageEditDefaultTerrificTemplateHandler>>();
			container.RegisterType<INamingRule, NamingRule>();
			container.RegisterInstance(serverConfiguration);

			new DefaultUnityModule().Configure(container);

#if DEBUG
		    var fileSystem = new FileSystem(path);
		    container.RegisterInstance<IFileSystem>(fileSystem);
#else
			container.RegisterInstance<IFileSystem>(new EmbeddedResourceFileSystem(typeof(WebInitializer).Assembly));
#endif

            foreach (var item in configuration.Applications.Values)
			{
				var childContainer = container.CreateChildContainer();

				var app = DefaultUnityModule.RegisterForApplication(childContainer, path, item.BasePath,
					item.ApplicationName, item.Section);
				container.RegisterInstance(item.ApplicationName, app);
			}

			foreach (var app in container.ResolveAll<TerrificNetApplication>())
			{
				foreach (var template in app.Container.Resolve<ITemplateRepository>().GetAll())
				{
					Console.WriteLine(template.Id);
				}
			}

			new TerrificBundleUnityModule().Configure(container);
			return container;
		}