Esempio n. 1
0
        private Uri GetRedirectUrl(SignInMessage signInMessage, AuthenticateResult authResult)
        {
            if (signInMessage == null)
            {
                throw new ArgumentNullException("signInMessage");
            }
            if (authResult == null)
            {
                throw new ArgumentNullException("authResult");
            }

            if (authResult.IsPartialSignIn)
            {
                var path = authResult.PartialSignInRedirectPath;
                if (path.StartsWith("~/"))
                {
                    path = path.Substring(2);
                    path = Request.GetIdentityServerBaseUrl() + path;
                }
                var host = new Uri(context.GetIdentityServerHost());
                return(new Uri(host, path));
            }
            else
            {
                return(new Uri(signInMessage.ReturnUrl));
            }
        }