public static LoginProfile GetProfile(this Uri uri)
        {
            var profile     = new LoginProfile();
            var queryString = HttpUtility.ParseQueryString(uri.Query);

            if (!string.IsNullOrEmpty(queryString[LoginProfile.QueryParamName]))
            {
                profile.ParseFromUrl(uri);
                return(profile);
            }
            if (!string.IsNullOrEmpty(queryString[LoginProfile.QueryCacheParamName]))
            {
                return((LoginProfile)HttpRuntime.Cache.Get(queryString[LoginProfile.QueryCacheParamName]));
            }
            return(null);
        }
 public static LoginProfile GetProfile(this Uri uri)
 {
     var profile = new LoginProfile();
     var queryString = HttpUtility.ParseQueryString(uri.Query);
     if (!string.IsNullOrEmpty(queryString[LoginProfile.QuerySessionParamName]) && HttpContext.Current != null && HttpContext.Current.Session != null)
     {
         return (LoginProfile)HttpContext.Current.Session[queryString[LoginProfile.QuerySessionParamName]];
     }
     if (!string.IsNullOrEmpty(queryString[LoginProfile.QueryParamName]))
     {
         profile.ParseFromUrl(uri);
         return profile;
     }
     if (!string.IsNullOrEmpty(queryString[LoginProfile.QueryCacheParamName]))
     {
         return (LoginProfile)HttpRuntime.Cache.Get(queryString[LoginProfile.QuerySessionParamName]);
     }
     return null;
 }
Ejemplo n.º 3
0
        public static LoginProfile GetProfile(this Uri uri, HttpContext context, IMemoryCache memoryCache, Signature signature, InstanceCrypto instanceCrypto)
        {
            var profile     = new LoginProfile(signature, instanceCrypto);
            var queryString = HttpUtility.ParseQueryString(uri.Query);

            if (!string.IsNullOrEmpty(queryString[LoginProfile.QuerySessionParamName]) && context != null && context.Session != null)
            {
                return(JsonConvert.DeserializeObject <LoginProfile>(context.Session.GetString(queryString[LoginProfile.QuerySessionParamName])));
            }
            if (!string.IsNullOrEmpty(queryString[LoginProfile.QueryParamName]))
            {
                profile.ParseFromUrl(context, uri, memoryCache);
                return(profile);
            }
            if (!string.IsNullOrEmpty(queryString[LoginProfile.QueryCacheParamName]))
            {
                return((LoginProfile)memoryCache.Get(queryString[LoginProfile.QuerySessionParamName]));
            }
            return(null);
        }