public Task AddClientDisclaimerAsync(IClientDisclaimer disclaimer) { var tasks = new List <Task> { _database.HashSetAsync(GetClientDisclaimerKey(disclaimer.ClientId, disclaimer.DisclaimerId), disclaimer.ToHashEntries()), _database.SetAddAsync(GetClientDisclaimerIdsKey(disclaimer.ClientId), disclaimer.DisclaimerId) }; return(Task.WhenAll(tasks)); }
public static HashEntry[] ToHashEntries(this IClientDisclaimer disclaimer) { return(new[] { new HashEntry(nameof(ClientDisclaimer.ClientId), disclaimer.ClientId), new HashEntry(nameof(ClientDisclaimer.DisclaimerId), disclaimer.DisclaimerId ?? string.Empty), new HashEntry(nameof(ClientDisclaimer.Approved), disclaimer.Approved.ToString() ?? string.Empty), new HashEntry(nameof(ClientDisclaimer.ApprovedDate), disclaimer.ApprovedDate.ToString(DateFormat)) }); }
public async Task InsertOrReplaceAsync(IClientDisclaimer clientDisclaimer) { var entity = new ClientDisclaimerEntity(GetPartitionKey(clientDisclaimer.ClientId), GetRowKey(clientDisclaimer.DisclaimerId)); Mapper.Map(clientDisclaimer, entity); await _storage.InsertOrReplaceAsync(entity); var index = AzureIndex.Create(GetDisclaimerIdIndexPartitionKey(clientDisclaimer.DisclaimerId), GetDisclaimerIdIndexRowKey(clientDisclaimer.ClientId), entity); await _disclaimerIdIndexStorage.InsertOrReplaceAsync(index); }