コード例 #1
0
        /// <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);
        }
コード例 #2
0
        // 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>()
                     *      }
                     *  });*/
                }
                                       );
            }
        }