internal IDbConnection GetIDbConnection(string name) { //ConnectionStringSettings configuration = ConfigurationManager.ConnectionStrings[name];//.get_Item(name); -> Maneira Antiga de se Obter a Connection String em .net Framework ConnectionStringSettings configuration = ConnectionStringSettingsSingleton.Obter().connectionStringSettings; if (configuration == null) { throw new Exception($"Não foi possível criar uma conexão para a connectionstring ( {name} )"); } if (GetKey(configuration) != "SYBASE") { return(CreateConnection(configuration)); } return(this.GetConnectionSybase(configuration)); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddSingleton <IAuthorizationHandler, ValidJWTHandler>(); services.AddSingleton <IHttpContextAccessor, HttpContextAccessor>(); services.AddControllers(); Mapeador.Mapeador.Obter().RegistrarMapeamentos(); string connectionStringName = Configuration.GetSection("ConnectionStringOptions:Name").Value; string connectionStringProviderName = Configuration.GetSection("ConnectionStringOptions:ProviderName").Value; string connectionString = Configuration.GetSection("ConnectionStringOptions:ConnectionString").Value; ConnectionStringSettingsSingleton.Obter().setConnectionStringSettings(connectionStringName, connectionString, connectionStringProviderName); services.AddAuthorization(options => { options.AddPolicy("JWT", policy => policy.Requirements.Add(new ValidJWTRequirement())); }); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "CSharpUsersAPI", Version = "v1" }); c.OrderActionsBy((apiDesc) => $"{apiDesc.ActionDescriptor.RouteValues["controller"]}_{apiDesc.HttpMethod}_{apiDesc.RelativePath}"); c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme { Description = "JWT Authorization header using the Bearer scheme.", Type = SecuritySchemeType.Http, Scheme = "bearer" }); c.AddSecurityRequirement(new OpenApiSecurityRequirement { { new OpenApiSecurityScheme { Reference = new OpenApiReference { Id = "Bearer", Type = ReferenceType.SecurityScheme } }, new List <string>() } }); }); services.AddHttpContextAccessor(); services.AddCors(); services.AddControllers() .AddJsonOptions(opts => opts.JsonSerializerOptions.PropertyNamingPolicy = null); services.AddHttpsRedirection(options => { options.RedirectStatusCode = StatusCodes.Status308PermanentRedirect; options.HttpsPort = 443; }); }