/// <summary> /// Load your modules or register your services here! /// </summary> /// <param name="kernel">The kernel.</param> private static void RegisterServices(IKernel kernel) { var connectionStringKey = ConfigurationManager.AppSettings["ConnectionString"]; var connectionString = ConfigurationManager.ConnectionStrings[connectionStringKey].ConnectionString; var expireInAfterHours = ConfigurationManager.AppSettings["ConfirmNewEmailExpires"]; var approvalLinkExpireIn = ConfigurationManager.AppSettings["ApprovalLinkExpiresIn"]; var pathToTempFiles = ConfigurationManager.AppSettings["PathToTempFiles"]; var dataLinkerHost = ConfigurationManager.AppSettings["DataLinkerHost"]; // Page size var manageUsersPageSize = ConfigurationManager.AppSettings["ManageUsersPageSize"]; var manageSchemasPageSize = ConfigurationManager.AppSettings["ManageSchemasPageSize"]; var manageLicensesPageSize = ConfigurationManager.AppSettings["ManageLicensesPageSize"]; var manageApplicationsPageSize = ConfigurationManager.AppSettings["ManageApplicationsPageSize"]; var manageOrganizationsPageSize = ConfigurationManager.AppSettings["ManageOrganizationsPageSize"]; var manageLicenseTemplatesPageSize = ConfigurationManager.AppSettings["ManageLicenseTemplatesPageSize"]; kernel.Bind <IConfigurationService>() .To <ConfigurationService>() .WithPropertyValue("ConnectionString", connectionString) .WithPropertyValue("ConfirmNewEmailExpires", expireInAfterHours) .WithPropertyValue("ApprovalLinkExpiresIn", approvalLinkExpireIn) .WithPropertyValue("PathToTempFiles", pathToTempFiles) .WithPropertyValue("DataLinkerHost", dataLinkerHost) // Page size for list views .WithPropertyValue("ManageUsersPageSize", int.Parse(manageUsersPageSize)) .WithPropertyValue("ManageSchemasPageSize", int.Parse(manageSchemasPageSize)) .WithPropertyValue("ManageLicensesPageSize", int.Parse(manageLicensesPageSize)) .WithPropertyValue("ManageApplicationsPageSize", int.Parse(manageApplicationsPageSize)) .WithPropertyValue("ManageOrganizationsPageSize", int.Parse(manageOrganizationsPageSize)) .WithPropertyValue("ManageLicenseTemplatesPageSize", int.Parse(manageLicenseTemplatesPageSize)); kernel.Bind <IEmailSettings>() .To <EmailSettings>() .WithPropertyValue("SmtpServer", ConfigurationManager.AppSettings["SmtpServer"]) .WithPropertyValue("SmtpUser", ConfigurationManager.AppSettings["SmtpUser"]) .WithPropertyValue("SmtpPort", ConfigurationManager.AppSettings["SmtpPort"]) .WithPropertyValue("SmtpUseDefault", Boolean.Parse(ConfigurationManager.AppSettings["SmtpUseDefault"] ?? "false")) .WithPropertyValue("SmtpUseSsl", Boolean.Parse(ConfigurationManager.AppSettings["SmtpUseSsl"] ?? "false")) .WithPropertyValue("SmtpPassword", ConfigurationManager.AppSettings["SmtpPassword"]) .WithPropertyValue("SmtpFromName", ConfigurationManager.AppSettings["SmtpFromName"]) .WithPropertyValue("SmtpFromEmail", ConfigurationManager.AppSettings["SmtpFromEmail"]) .WithPropertyValue("SendEmail", Boolean.Parse(ConfigurationManager.AppSettings["SendEmail"] ?? "false")) .WithPropertyValue("PathToMail", ConfigurationManager.AppSettings["PathToMail"]); kernel.Bind <IIdsApiService>().To <IdsApiService>(); ServicesSetup.RegisterNInjectBindings(kernel); SetupEmailServices.RegisterNInjectBindings(kernel); GlobalConfiguration.Configuration.UseNinjectActivator(kernel); JobActivator.Current = new NinjectJobActivator(kernel); }
// This method gets called by the runtime. Use this method to add services to the container. // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940 public void ConfigureServices(IServiceCollection services) { ContextSetup.ConfigureDbContext(services, _configuration); ServicesSetup.ConfigureServices(services, _configuration, out var maps); ControllerSetup.ConfigureControllers(services, maps, _configuration); if (_env.IsDevelopment()) { services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" }); /*c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme * { * Description = "JWT Authorization header using the Bearer scheme. \r\n\r\n" + * "Enter 'Bearer' [space] and then your token in the text input below.\r\n\r\n" + * "Example: 'Bearer 12345abcdef'", * Name = "Authorization", * In = ParameterLocation.Header, * Type = SecuritySchemeType.ApiKey, * Scheme = JwtBearerDefaults.AuthenticationScheme * }); * * c.AddSecurityRequirement( * new OpenApiSecurityRequirement * { * { * new OpenApiSecurityScheme * { * Reference = new OpenApiReference * { * Type = ReferenceType.SecurityScheme, * Id = "Bearer" * }, * Scheme = "oauth2", * Name = "Bearer", * In = ParameterLocation.Header * }, * new List<string>() * } * });*/ } ); } }