Class DataSeeder
- Namespace
- SEBT.Portal.Infrastructure.Services
- Assembly
- SEBT.Portal.Infrastructure.dll
Infrastructure implementation of IDataSeeder that handles database operations and mapping between domain models and entities.
public class DataSeeder : IDataSeeder
- Inheritance
-
objectDataSeeder
- Implements
Constructors
DataSeeder(PortalDbContext, IIdentifierHasher, IPiiSymmetricEncryption, IEmailLookupHasher)
public DataSeeder(PortalDbContext dbContext, IIdentifierHasher identifierHasher, IPiiSymmetricEncryption piiSymmetricEncryption, IEmailLookupHasher emailLookupHasher)
Parameters
dbContextPortalDbContextidentifierHasherIIdentifierHasherpiiSymmetricEncryptionIPiiSymmetricEncryptionemailLookupHasherIEmailLookupHasher
Methods
AddUsers(IEnumerable<User>)
Synchronous version for UseSeeding callback.
public void AddUsers(IEnumerable<User> users)
Parameters
usersIEnumerable<User>
AddUsersAsync(IEnumerable<User>, CancellationToken)
Adds users to the database.
public Task AddUsersAsync(IEnumerable<User> users, CancellationToken cancellationToken = default)
Parameters
usersIEnumerable<User>cancellationTokenCancellationToken
Returns
- Task
AnyUsersExist()
Synchronous version for UseSeeding callback.
public bool AnyUsersExist()
Returns
- bool
AnyUsersExistAsync(CancellationToken)
Checks if any users exist in the database.
public Task<bool> AnyUsersExistAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- Task<bool>
GetExistingUserEmails(IEnumerable<string>)
Synchronous version for UseSeeding callback. Gets existing user emails from the database.
public HashSet<string> GetExistingUserEmails(IEnumerable<string> emails)
Parameters
emailsIEnumerable<string>
Returns
- HashSet<string>
GetExistingUserEmailsAsync(IEnumerable<string>, CancellationToken)
Gets existing user emails from the database.
public Task<HashSet<string>> GetExistingUserEmailsAsync(IEnumerable<string> emails, CancellationToken cancellationToken = default)
Parameters
emailsIEnumerable<string>cancellationTokenCancellationToken
Returns
- Task<HashSet<string>>
GetUserEmailsByDomainAsync(string, CancellationToken)
Gets user emails that end with the specified domain.
public Task<List<string>> GetUserEmailsByDomainAsync(string emailDomain, CancellationToken cancellationToken = default)
Parameters
emailDomainstringcancellationTokenCancellationToken
Returns
- Task<List<string>>
RemoveUserOptInsByEmailAsync(IEnumerable<string>, CancellationToken)
Removes user opt-ins with specified emails from the database.
public Task RemoveUserOptInsByEmailAsync(IEnumerable<string> emails, CancellationToken cancellationToken = default)
Parameters
emailsIEnumerable<string>cancellationTokenCancellationToken
Returns
- Task
RemoveUsersByEmailAsync(IEnumerable<string>, CancellationToken)
Removes users with specified emails from the database.
public Task RemoveUsersByEmailAsync(IEnumerable<string> emails, CancellationToken cancellationToken = default)
Parameters
emailsIEnumerable<string>cancellationTokenCancellationToken
Returns
- Task
SaveChanges()
Synchronous version for UseSeeding callback.
public void SaveChanges()
SaveChangesAsync(CancellationToken)
Saves changes to the database.
public Task SaveChangesAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- Task