public async Task <IActionResult> PutCampaign(Guid id, Campaign campaign) { if (id != campaign.Id) { return(BadRequest()); } _context.Entry(campaign).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CampaignExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task RemoveDeadRefreshTokens() { var tokensToDelete = _context.RefreshTokens.Where(x => x.IsRevoked || x.ExpiryDate < DateTime.UtcNow).ToArray(); if (tokensToDelete is not null && tokensToDelete.Length > 0) { _context.RefreshTokens.RemoveRange(tokensToDelete); await _context.SaveChangesAsync(); _logger.LogInformation($"Removed {tokensToDelete.Length} refresh tokens."); } }
public async Task <IActionResult> RevokeToken([FromBody] TokenRequestDto tokenRequest) { if (!ModelState.IsValid) { return(BadRequest(new AuthResult() { Success = false, Errors = new List <string>() { "Invalid payload." } })); } var username = User.FindFirst(ClaimTypes.NameIdentifier).Value; var user = await _userManager.FindByNameAsync(username); if (user is not null) { var token = await _context.RefreshTokens .FirstOrDefaultAsync(x => x.UserId == user.Id && x.Token == tokenRequest.RefreshToken ); if (token is not null) { token.IsRevoked = true; await _context.SaveChangesAsync(); return(Ok()); } } return(BadRequest()); }
public Task <int> Add(Tracking vehicle) { _dbContext.Tracking.Add(vehicle); return(_dbContext.SaveChangesAsync()); }
public async Task SaveChanges() { await _db.SaveChangesAsync(); }