public ConsentViewModel BuildConsentViewModel(ModelStateDictionary modelState, AuthorizationRequest request, string returnUrl) { var clientResult = m_clientManager.FindClientByClientId(request.ClientId); if (clientResult.HasError) { modelState.AddModelError(clientResult.Error.Message); } var scopesResult = m_scopesManager.GetAllScopes(); if (scopesResult.HasError) { modelState.AddModelError(scopesResult.Error.Message); } var identityResourcesResult = m_identityResourceManager.GetAllIdentityResources(); if (identityResourcesResult.HasError) { modelState.AddModelError(identityResourcesResult.Error.Message); } var scopes = scopesResult.Result? .Where(x => request.ScopesRequested.FirstOrDefault(y => y == x.Name) != null).ToList(); var identityResources = identityResourcesResult.Result? .Where(x => request.ScopesRequested.FirstOrDefault(y => y == x.Name) != null).ToList(); var clientViewModel = m_mapper.Map <ClientViewModel>(clientResult.Result); var scopeViewModels = m_mapper.Map <IList <ScopeViewModel> >(scopes); var identityResourceViewModels = m_mapper.Map <IList <IdentityResourceViewModel> >(identityResources); return(m_viewModelFactory.GetConsentViewModel(returnUrl, clientViewModel, scopeViewModels, identityResourceViewModels)); }