private IHttpActionResult CreateConsentResult(
            ValidatedAuthorizeRequest validatedRequest,
            UserConsent consent,
            NameValueCollection requestParameters,
            string errorMessage)
        {
            string loginWithDifferentAccountUrl = null;

            if (validatedRequest.HasIdpAcrValue() == false)
            {
                loginWithDifferentAccountUrl = Url.Route(Constants.RouteNames.Oidc.SwitchUser, null)
                                               .AddQueryString(requestParameters.ToQueryString());
            }

            var env          = Request.GetOwinEnvironment();
            var consentModel = new ConsentViewModel
            {
                RequestId                    = env.GetRequestId(),
                SiteName                     = _options.SiteName,
                SiteUrl                      = env.GetIdentityServerBaseUrl(),
                ErrorMessage                 = errorMessage,
                CurrentUser                  = env.GetCurrentUserDisplayName(),
                LogoutUrl                    = env.GetIdentityServerLogoutUrl(),
                ClientName                   = validatedRequest.Client.ClientName,
                ClientUrl                    = validatedRequest.Client.ClientUri,
                ClientLogoUrl                = validatedRequest.Client.LogoUri,
                IdentityScopes               = validatedRequest.GetIdentityScopes(this._localizationService),
                ResourceScopes               = validatedRequest.GetResourceScopes(this._localizationService),
                AllowRememberConsent         = validatedRequest.Client.AllowRememberConsent,
                RememberConsent              = consent == null || consent.RememberConsent,
                LoginWithDifferentAccountUrl = loginWithDifferentAccountUrl,
                ConsentUrl                   = Url.Route(Constants.RouteNames.Oidc.Consent, null).AddQueryString(requestParameters.ToQueryString()),
                AntiForgery                  = _antiForgeryToken.GetAntiForgeryToken()
            };

            return(new ConsentActionResult(_viewService, consentModel, validatedRequest));
        }