DetermineProviderCultureResult(HttpContext httpContext) { IdentityBaseContext idbContext = httpContext.RequestServices .GetService <IdentityBaseContext>(); ApplicationOptions appOptions = httpContext.RequestServices .GetService <ApplicationOptions>(); if (idbContext.IsValid) { string culture = httpContext.Request.Query["culture"]; if (String.IsNullOrWhiteSpace(culture) && idbContext.AuthorizationRequest != null) { culture = idbContext .AuthorizationRequest .Parameters? .GetValues("culture")? .FirstOrDefault(); } // TODO: Get all theme supported cultures if (String.IsNullOrWhiteSpace(culture)) { // TODO: Replace by client overrides for application options culture = idbContext.ClientProperties.Culture ?? appOptions.DefaultCulture; } if (culture != null) { return(new ProviderCultureResult( new StringSegment(culture))); } } return(null); }