public Task <IEnumerable <FactorsCredential> > ListCredentialsForAsync(string userAccountId, IFactorsFeatureType featureType, FactorsCredentialListQueryType accountsToInclude) { return(this.ListCredentialsForAsync(userAccountId, featureType, accountsToInclude, true)); }
private async Task <IEnumerable <FactorsCredential> > ListCredentialsForAsync(string userAccountId, IFactorsFeatureType featureType, FactorsCredentialListQueryType accountsToInclude, bool runAsAsync) { using (var db = (runAsAsync ? await _dbConnection.OpenAsync().ConfigureAwait(false) : _dbConnection.Open())) { var query = db.From <FactorsCredential>() .Where(cred => cred.UserAccountId == userAccountId); if (featureType != null) { query = query.Where(cred => cred.FeatureTypeGuid == featureType.FeatureGuid); } switch (accountsToInclude) { case FactorsCredentialListQueryType.UnverifiedAccounts: query = query.Where(cred => cred.CredentialIsValidated == false); break; case FactorsCredentialListQueryType.VerifiedAccounts: query = query.Where(cred => cred.CredentialIsValidated == true); break; } var queryResult = runAsAsync ? await db.SelectAsync(query).ConfigureAwait(false) : db.Select(query); return(queryResult); } }
public IEnumerable <FactorsCredential> ListCredentialsFor(string userAccountId, IFactorsFeatureType featureType, FactorsCredentialListQueryType accountsToInclude) { return(this.ListCredentialsForAsync(userAccountId, featureType, accountsToInclude, false).GetAwaiter().GetResult()); }