コード例 #1
0
ファイル: UserStore.cs プロジェクト: huyvuqd/TemplateProject
        public async Task <User> FindAsync(UserLoginInfo login)
        {
            ThrowIfDisposed();
            if (login == null)
            {
                throw new ArgumentNullException("login");
            }

            var userLogin = await _userLoginRepository.FindByLoginProviderAndProviderKey(login.LoginProvider, login.ProviderKey);

            if (userLogin == null)
            {
                return(default(User));
            }

            return(await _userRepository.GetByIdAsync(userLogin.UserId));
        }
コード例 #2
0
        /// <summary>
        /// Asynchronously returns the user associated with this login.
        /// </summary>
        /// <param name="user">login as UserLoginInfo</param>
        /// <returns>returns Task User</returns>
        public async Task <IAppUser> FindAsync(UserLoginInfo login)
        {
            ThrowIfDisposed();
            if (login == null)
            {
                throw new ArgumentNullException("login");
            }

            var userLogin = await _userLoginRepository.FindByLoginProviderAndProviderKey(login.LoginProvider, login.ProviderKey);

            if (userLogin == null)
            {
                return(default(IAppUser));
            }

            //to do можно ли так приводить ?
            return(await(_userRepository as IRepositoryBase <IAppUser>).GetByIdAsync(userLogin.UserId));
        }