protected override Task <IdentityUserLoginNav <TKey> > FindUserLoginAsync(string loginProvider, string providerKey, CancellationToken cancellationToken) => UserLogins.SingleOrDefaultAsync(userLogin => userLogin.LoginProvider == loginProvider && userLogin.ProviderKey == providerKey, cancellationToken);
/// <summary> /// Return a user login with provider, providerKey if it exists. /// </summary> /// <param name="loginProvider">The login provider name.</param> /// <param name="providerKey">The key provided by the <paramref name="loginProvider"/> to identify a user.</param> /// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param> /// <returns>The user login if it exists.</returns> protected override Task <UserLogin> FindUserLoginAsync(string loginProvider, string providerKey, CancellationToken cancellationToken) { return(UserLogins.SingleOrDefaultAsync(userLogin => userLogin.LoginProvider == loginProvider && userLogin.ProviderKey == providerKey, cancellationToken)); }
protected override Task <IdentityUserLogin <Guid> > FindUserLoginAsync(Guid userId, string loginProvider, string providerKey, CancellationToken cancellationToken) { return(UserLogins.SingleOrDefaultAsync(userLogin => userLogin.UserId.Equals(userId) && userLogin.LoginProvider == loginProvider && userLogin.ProviderKey == providerKey, cancellationToken)); }