示例#1
0
        // Configure is called after ConfigureServices is called.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            // Configure the HTTP request pipeline.
            app.UseStaticFiles();

            // Add MVC to the request pipeline.
            app.UseMvc();

            SwaggerConfig.Configure(app, env);
        }
        public OnStartupEvents()
        {
            var builder = new ConfigurationBuilder().AddXmlFile(Path.Combine(
                                                                    Path.GetDirectoryName(typeof(OnStartupEvents).Assembly.Location),
                                                                    $"{typeof(OnStartupEvents).Assembly.GetName().Name}.dll.config"));
            var conf = builder.Build();

            _configModel = new SwaggerConfig();
            conf.GetSection("SwaggerConfig").Bind(_configModel);
        }
示例#3
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 public Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _swagger = new SwaggerConfig(configuration);
     _auth    = new AuthConfig(configuration);
     _hub     = new IoTHubConfig(configuration);
     _cors    = new CorsConfig(configuration);
     _eh      = new EventHubConfig(configuration);
     _ai      = new ApplicationInsightsConfig(configuration);
 }
示例#4
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseMvc();
            SwaggerConfig.Configure(app, env);
        }
示例#5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="app"></param>
        public void Configuration(IAppBuilder app)
        {
            HttpConfiguration config = new HttpConfiguration();

            RouteConfig.Configure(config);
            FormatterConfig.Configure(config);
            SwaggerConfig.Configure(config);

            app.UseWebApi(config);
        }
示例#6
0
        public override void Initialize()
        {
            //This code is used to register classes to dependency injection system for this assembly using conventions.
            IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly());
            var config = Configuration.Modules.AbpWebApi().HttpConfiguration;

            config.EnableCors(new EnableCorsAttribute("*", "*", "*"));
            config.MapHttpAttributeRoutes();
            SwaggerConfig.Register(config);
        }
示例#7
0
        public static void AddSwagger(string solutionDirectory, SwaggerConfig swaggerConfig, string projectName, bool addJwtAuthentication, string policyName, string projectBaseName, IFileSystem fileSystem)
        {
            if (swaggerConfig.IsSameOrEqualTo(new SwaggerConfig()))
            {
                return;
            }

            AddSwaggerServiceExtension(solutionDirectory, projectBaseName, swaggerConfig, projectName, addJwtAuthentication, policyName, fileSystem);
            WebApiAppExtensionsBuilder.CreateSwaggerWebApiAppExtension(solutionDirectory, swaggerConfig, addJwtAuthentication, projectBaseName, fileSystem);
            UpdateWebApiCsProjSwaggerSettings(solutionDirectory, projectBaseName);
        }
        public void Configuration(IAppBuilder app)
        {
            var httpConfiguration = new HttpConfiguration();

            SwaggerConfig.Register(httpConfiguration);
            WebApiConfig.Register(httpConfiguration);

            app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
            app.UseOAuth();
            app.UseWebApi(httpConfiguration);
        }
示例#9
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddScoped <ICoworkingDBContext, CoworkingDBContext>();
            services.AddDbContext <CoworkingDBContext>(
                options => options.UseSqlServer(Configuration.GetConnectionString("DataBaseConnection")));

            services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());
            IoCRegister.AddRegistration(services);
            SwaggerConfig.AddRegistration(services);
            services.AddControllers();
        }
示例#10
0
        public void Configuration(IAppBuilder app)
        {
            var config = new HttpConfiguration();

            AutofacConfig.Configure(config, app);
            WebApiConfig.Register(config);
            SwaggerConfig.Register(config);

            ConfigureAuth(app);
            app.UseWebApi(config);
        }
示例#11
0
        public static void Register(HttpConfiguration config)
        {
            SwaggerConfig.Register(config);
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: RouteNames.GetRooms,
                routeTemplate: "{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );
        }
 public static IApplicationBuilder UseSwagger(this IApplicationBuilder app, SwaggerConfig swaggerConfig)
 {
     app.UseSwagger(c =>
     {
         c.PreSerializeFilters.Add((swagger, httpReq) => swagger.Host = httpReq.Host.Value);
     });
     return(app.UseSwaggerUI(c =>
     {
         c.SwaggerEndpoint("/swagger/" + swaggerConfig.Version + "/swagger.json", swaggerConfig.ApplicationName);
     }));
 }
示例#13
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 public Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _swagger = new SwaggerConfig(configuration);
     _auth    = new AuthConfig(configuration);
     _hub     = new IoTHubConfig(configuration);
     _cors    = new CorsConfig(configuration);
     _sb      = new ServiceBusConfig(configuration);
     _cosmos  = new CosmosDbConfig(configuration);
     _ai      = new ApplicationInsightsConfig(configuration);
 }
示例#14
0
文件: Startup.cs 项目: Alice52/C
        public Startup(IConfiguration configuration, ILogger <Startup> logger
                       //, IHttpClientFactory httpClientFactory
                       )
        {
            Configuration = configuration;
            _logger       = logger;
            //_httpClientFactory = httpClientFactory;

            SwaggerConfig = new SwaggerConfig();
            Configuration.GetSection("SwaggerConfig").Bind(SwaggerConfig);
        }
示例#15
0
        public Startup()
        {
            var builder = new ConfigurationBuilder()
                          .AddJsonFile("appsettings.json")
                          .AddEnvironmentVariables();

            Configuration = builder.Build();

            var swaggerConfigExtractor = new SwaggerConfigExtractor(Configuration, typeof(Startup).Assembly);

            SwaggerConfig = swaggerConfigExtractor.SwaggerConfig;
        }
示例#16
0
 public void VerifyDocumentTitleAutoPoco()
 {
     using (var server = TestServer.Create(app =>
     {
         SwaggerConfig.Register(Config, "/autoPocoPath");
         app.UseWebApi(Config);
     }))
     {
         string result = server.HttpClient.GetStringAsync("autoPocoPath/swagger/ui/index").Result;
         Assert.IsTrue(result.Contains("<title>AutoPoco</title>"));
     }
 }
 // This method gets called by the runtime. Use this method to add services to the container.
 public void ConfigureServices(IServiceCollection services)
 {
     services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
     //Paging.ConfigureServices(services);
     SwaggerConfig.ConfigureServices(services);
     AppIDConfigUrl.ConfigureServices(services);
     //IMapperConfig.ImapperConfigService(services);
     //ConfigServiceFluentValidation.ConfigureServices(services);
     services.AddDbContext <ChoThueXeContext>(options =>
                                              options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
     RepositoryConfig.ConfigureServices(services);
 }
示例#18
0
        public void Configuration(IAppBuilder app)
        {
            ConfigureOAuth(app);


            HttpConfiguration config = new HttpConfiguration();

            WebApiConfig.Register(config);
            app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
            app.UseWebApi(config);
            SwaggerConfig.Register(config);
        }
示例#19
0
        public static void AddStartupEnvironmentsWithServices(
            string solutionDirectory,
            string solutionName,
            string dbName,
            List <ApiEnvironment> environments,
            SwaggerConfig swaggerConfig,
            int port,
            bool useJwtAuth,
            string projectBaseName = "")
        {
            // add a development environment by default for local work if none exists
            if (environments.Where(e => e.EnvironmentName == "Development").Count() == 0)
            {
                environments.Add(new ApiEnvironment {
                    EnvironmentName = "Development", ProfileName = $"{solutionName} (Development)"
                });
            }

            if (environments.Where(e => e.EnvironmentName == "Production").Count() == 0)
            {
                environments.Add(new ApiEnvironment {
                    EnvironmentName = "Production", ProfileName = $"{solutionName} (Production)"
                });
            }

            var sortedEnvironments = environments.OrderBy(e => e.EnvironmentName == "Development" ? 1 : 0).ToList(); // sets dev as default profile

            foreach (var env in sortedEnvironments)
            {
                // default startup is already built in cleanup phase
                if (env.EnvironmentName != "Production")
                {
                    StartupBuilder.CreateWebApiStartup(solutionDirectory, env.EnvironmentName, useJwtAuth, projectBaseName);
                }

                WebApiAppSettingsBuilder.CreateAppSettings(solutionDirectory, env, dbName, projectBaseName);
                WebApiLaunchSettingsModifier.AddProfile(solutionDirectory, env, port, projectBaseName);

                //services
                if (!swaggerConfig.IsSameOrEqualTo(new SwaggerConfig()))
                {
                    SwaggerBuilder.RegisterSwaggerInStartup(solutionDirectory, env, projectBaseName);
                }
            }

            // add an integration testing env to make sure that an in memory database is used
            var functionalEnv = new ApiEnvironment()
            {
                EnvironmentName = "FunctionalTesting"
            };

            WebApiAppSettingsBuilder.CreateAppSettings(solutionDirectory, functionalEnv, "", projectBaseName);
        }
示例#20
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddSingleton <ISodimacDBManager, SodimacDBManager>();
            services.AddHttpClient <IApiCaller, ApiCaller>();
            services.AddTransient <IOrdenCompraRepository, OrdenCompraRepository>();
            services.AddTransient <IOrdenCompraService, OrdenCompraService>();

            services.AddControllers();

            SwaggerConfig.AddRegistration(services);
            services.Configure <ApiConfig>(Configuration.GetSection("ApiConfig"));
        }
示例#21
0
 public void ToModelProperty_NonPrimitive_ShouldHaveRefSet()
 {
     new SwaggerModelPropertyData
     {
         Type = typeof(TestModel)
     }.ToModelProperty().ShouldEqual(
         new ModelProperty
     {
         Ref = SwaggerConfig.ModelIdConvention(typeof(TestModel))
     }
         );
 }
示例#22
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public IServiceProvider ConfigureServices(IServiceCollection services)
        {
            //   services.AddCors(options =>
            //options.AddPolicy("MyDomain",
            //builder => builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader().AllowAnyOrigin().AllowCredentials()));

            services.AddMvc();
            //配置验证
            auth.ConfigureAuthService(services, Configuration);
            SwaggerConfig.ServicesConfig(services);
            return(IOCRegister.InitIoC(services, Configuration));
        }
示例#23
0
        public void Configuration(IAppBuilder app)
        {
            ConfigureOAuth(app);
            HttpConfiguration config = new HttpConfiguration();

            SwaggerConfig.Register(config);
            AutoMapperConfig.Initialize();
            DependencyInjectionConfig.RegisterDependencyInjection(config);
            WebApiConfig.Register(config);
            app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
            app.UseWebApi(config);
        }
示例#24
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddTransient <ICoworkingDBContext, CoworkingDBContext>();
            services.AddDbContext <CoworkingDBContext>(o => o.UseSqlServer(Configuration.GetConnectionString("DB")));
            IoCRegister.Register(services);

            SwaggerConfig.Register(services);

            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

            //agregar servicios
        }
示例#25
0
        private static void AddSwaggerServiceExtension(string solutionDirectory, SwaggerConfig swaggerConfig, string solutionName, bool addJwtAuthentication, List <Policy> policies)
        {
            try
            {
                var classPath = ClassPathHelper.WebApiExtensionsClassPath(solutionDirectory, $"ServiceExtensions.cs");

                if (!Directory.Exists(classPath.ClassDirectory))
                {
                    throw new DirectoryNotFoundException($"The `{classPath.ClassDirectory}` directory could not be found.");
                }

                if (!File.Exists(classPath.FullClassPath))
                {
                    throw new FileNotFoundException($"The `{classPath.FullClassPath}` file could not be found.");
                }

                var tempPath = $"{classPath.FullClassPath}temp";
                using (var input = File.OpenText(classPath.FullClassPath))
                {
                    using (var output = new StreamWriter(tempPath))
                    {
                        string line;
                        while (null != (line = input.ReadLine()))
                        {
                            var newText = $"{line}";
                            if (line.Contains("#region Swagger Region"))
                            {
                                newText += GetSwaggerServiceExtensionText(swaggerConfig, solutionName, addJwtAuthentication, policies);
                            }

                            output.WriteLine(newText);
                        }
                    }
                }

                // delete the old file and set the name of the new one to the original name
                File.Delete(classPath.FullClassPath);
                File.Move(tempPath, classPath.FullClassPath);

                GlobalSingleton.AddUpdatedFile(classPath.FullClassPath.Replace($"{solutionDirectory}{Path.DirectorySeparatorChar}", ""));
            }
            catch (FileAlreadyExistsException e)
            {
                WriteError(e.Message);
                throw;
            }
            catch (Exception e)
            {
                WriteError($"An unhandled exception occurred when running the API command.\nThe error details are: \n{e.Message}");
                throw;
            }
        }
示例#26
0
文件: Startup.cs 项目: vns140/ltm
        public void Configuration(IAppBuilder app)
        {
            Container container = new Container();

            container = SimpleInjectorWebApiInitializer.Initialize(container);
            ConfigureOAuth(app, container);
            HttpConfiguration config = new HttpConfiguration();

            SwaggerConfig.RegisterSwagger(config);
            WebApiConfig.Register(config);
            app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
            app.UseWebApi(config);
        }
示例#27
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            app.UseDeveloperExceptionPage();

            app.UseHttpsRedirection();
            app.UseStaticFiles();
            app.UseCookiePolicy();
            app.UseCors("CorsPolicy");

            app.UseMvc();

            SwaggerConfig.UseSwaggerDoc(app, env, Configuration);
        }
示例#28
0
        public void Configuration(IAppBuilder app)
        {
            var config = new HttpConfiguration();

            WebApiConfig.Register(config);
            SwaggerConfig.Register(config);
            DependencyConfig.Register(config);

            AuthZeroConfig.ConfigureAuthZero(app);

            app.UseCors(CorsOptions.AllowAll);
            app.UseWebApi(config);
        }
示例#29
0
        public void Configuration(IAppBuilder app)
        {
            LoggingConfig.Register();
            HttpConfiguration config = new HttpConfiguration();

            SwaggerConfig.Register(config);

            WebApiConfig.Register(config);
            app.UseNinjectMiddleware(NinjectConfig.CreateKernel)
            .UseNinjectWebApi(config);

            config.EnsureInitialized();
        }
示例#30
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddDbContext <SportCenterDBContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DataBaseConnection")));

            SwaggerConfig.AddRegistration(services);
            IoCConfig.AddRegistration(services);

            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

            // Configure the authentication
            services.AddAuthentication("BasicAuthentication")
            .AddScheme <AuthenticationSchemeOptions, BasicAuthenticationHandler>("BasicAuthentication", null);
        }