public async Task <IActionResult> WithdrawResourceData(Guid id, DateTime fromDate) { try { var res = await _removeService.CheckDate(fromDate); Context.ResourceDatas.Remove(GetDataAboutResource(id) as ResourceData); await Context.SaveChangesAsync(); return(new OkObjectResult(0)); } catch (Exception ex) { await _logger.LogToFile(ex, "errors.txt"); return(new StatusCodeResult(500)); } }
/// <summary> /// Metoda uruchamiana na innym wątku, w momencie, gdy nadejdzie wskazana data usunięcia zasobu, wtedy go usunie /// </summary> /// <param name="resource"></param> /// <param name="withdrawedOnDate"></param> public async void WithdrawResource(IResource resource, DateTime withdrawedOnDate) { /* Metoda poprawnie w przypadku wyrzucenia wyjątku jak najbardziej loguje go do pliku, * ale API zwraca 204 że niby ok,z powodu tego że tutaj musi być void bo tak wygląda * interfejs którego metodę tutaj implementuję */ try { var res = await removeService.CheckDate(withdrawedOnDate); Ctx.Resources.Remove(resource as Resource); Ctx.SaveChanges(); } catch (Exception ex) { await _logger.LogToFile(ex, "errors.txt"); } }