コード例 #1
0
        public static IWebHostBuilder UseInnkeeperPlatform(
            this IWebHostBuilder webHostBuilder, Action <WebApp> options, params string[] args)
        {
            var webApp           = IdentifyWebApp(options);
            var router           = Router.Create(webApp);
            var moduleCollection = ModuleCollection.Create(webApp);
            var context          = new Parts
            {
                WebApp           = webApp,
                Router           = router,
                ModuleCollection = moduleCollection
            };

            BuildInnkeeperPlatform(webHostBuilder, context, args);
            return(webHostBuilder);
        }
コード例 #2
0
        public static ModuleCollection Create(WebApp webApp)
        {
            var modules = new ModuleCollection();
            var types   = ExposedTypes.GetTypes <IModule>();

            foreach (var type in types)
            {
                try
                {
                    var module = (IModule)Activator.CreateInstance(type);
                    modules.Add(module);
                }
                catch (Exception ex)
                {
                    ex.Trace();
                }
            }
            return(modules);
        }