public async Task AddNotification(string email, string operationKey, EfEnums.NotificationRequestTypeEnum type) { this.context.NotificationRequests.Add(new NotificationRequest() { Email = email, NotificationRequestTypeId = (int)type, OperationKey = operationKey }); await this.context.SaveChangesAsync(); }
public async Task <IEnumerable <NotificationRequest> > GetAndClearNotifications(EfEnums.NotificationRequestTypeEnum type, string operationKey = null) { var query = this.context.NotificationRequests .AsNoTracking() .Where(x => x.NotificationRequestTypeId == (int)type); if (operationKey != null) { query = query.Where(x => x.OperationKey == operationKey); } var results = await query.ToListAsync(); this.context.NotificationRequests.RemoveRange(results); await this.context.SaveChangesAsync(); return(results); }