コード例 #1
0
        public Task <T> FindAsync(UserLoginInfo login)
        {
            //get all logins associated with the login id
            var result = _externalLoginStore.Find(login).ToArray();

            if (result.Any())
            {
                //return the first member that matches the result
                var user = (from id in result
                            select _memberService.GetById(id)
                            into member
                            where member != null
                            select new T
                {
                    Email = member.Email,
                    Id = member.Id,
                    LockoutEnabled = member.IsLockedOut,
                    LockoutEndDateUtc = DateTime.MaxValue.ToUniversalTime(),
                    UserName = member.Username,
                    PasswordHash = GetPasswordHash(member.RawPasswordValue)
                }).FirstOrDefault();

                return(Task.FromResult(AssignLoginsCallback(user)));
            }

            return(Task.FromResult((T)null));
        }
コード例 #2
0
        public Task <T> FindAsync(UserLoginInfo login)
        {
            //get all logins associated with the login id
            var result = _externalLoginStore.Find(login).ToArray();

            if (result.Any())
            {
                //return the first member that matches the result
                var user = (from id in result
                            select _memberService.GetById(id)
                            into member
                            where member != null
                            select MapFromMember(member)).FirstOrDefault();

                return(Task.FromResult(AssignLoginsCallback(user)));
            }

            return(Task.FromResult((T)null));
        }