private SPADOptions GetOptions(IConfiguration configuration, string graphSection) { var adOptions = new SPADOptions(); if (configuration.GetType().GetMethod("Bind") != null) { object[] parameters = { graphSection, adOptions }; adOptions = configuration.GetType().GetMethod("Bind").Invoke(configuration, parameters) as SPADOptions; } else { adOptions.Instance = configuration.GetSection(graphSection)["Instance"]; adOptions.TenantId = configuration.GetSection(graphSection)["TenantId"]; adOptions.ClientId = configuration.GetSection(graphSection)["ClientId"]; adOptions.ClientSecret = configuration.GetSection(graphSection)["ClientSecret"]; adOptions.ResourceId = configuration.GetSection(graphSection)["ResourceId"]; } return(adOptions); }
public PoolingProvider(IConfiguration configurator) { _ADOptions = GetOptions(configurator, POLLING_OPTIONS_SECTION); }