public async Task <IActionResult> DeleteMetric(MetricRemovalViewModel model) { var response = await _provider.GetRequiredService <IApiController>().RemoveMetric(model); if (response is OkObjectResult) { TempData["MessageSeverity"] = "success"; TempData["MessageContent"] = $"Metric {model.Type} from {model.Source} and its data have been deleted."; return(RedirectToAction("Index", "Home")); } else { return(response); } }
public async Task <IActionResult> RemoveMetric(MetricRemovalViewModel model) { var metric = await _context .Metrics .FirstOrDefaultAsync(mt => mt.Source == model.Source && mt.Type == model.MetricType.AsInt() ); if (metric == null) { return(NotFound()); } _context.Remove(metric); await _context.SaveChangesAsync(); _logger.LogWarning(LoggingEvents.Metrics.AsInt(), $"Metric {model.MetricType} of {model.Source} has been deleted."); return(Ok("Metric has successfully been removed.")); }