public async Task <IActionResult> Mail(Jobcoach jobcoach, ResultaatMailViewModel model) { try { // eerst kijken of deze analyse wel van deze jobcoach is Analyse mogelijkeAnalyse = jobcoach.Analyses.SingleOrDefault(a => a.AnalyseId == model.AnalyseId); if (mogelijkeAnalyse == null || mogelijkeAnalyse.Verwijderd) { TempData["error"] = "U heeft geen toegang tot deze analyse! Open enkel analyses die u ziet " + "op de homepagina of in het archief."; } else { Analyse analyse = _analyseRepository.GetByIdAll(model.AnalyseId); ExcelWriterResultaat excelWriter = new ExcelWriterResultaat(); string fileName = excelWriter.MaakExcel(analyse); FileInfo file = new FileInfo("temp\\" + fileName); string naam = model.Voornaam + " " + model.Naam; bool gelukt = await EmailSender.SendResultaat(naam, model.Emailadres, model.Onderwerp, model.Bericht, file); // bestand terug verwijderen van de server excelWriter.VerwijderBestand(); if (gelukt) { TempData["message"] = "Het resultaat is succesvol verzonden"; } else { TempData["error"] = "Het is op dit moment niet mogelijk om mails te verzenden, probeer later opnieuw"; } } } catch (Exception e) { _exceptionLogRepository.Add(new ExceptionLog(e, "Resultaat", "Mail -- POST --")); _exceptionLogRepository.Save(); TempData["error"] = "Er ging iets fout tijdens het verzenden van het resultaat, probeer later opnieuw"; } return(RedirectToAction("Index")); }
public IActionResult Mail(int id) { try { ResultaatMailViewModel model = new ResultaatMailViewModel { AnalyseId = id }; return(View(model)); } catch (Exception e) { _exceptionLogRepository.Add(new ExceptionLog(e, "Resultaat", "Mail -- GET --")); _exceptionLogRepository.Save(); TempData["error"] = "Er ging onverwacht iets fout, probeer later opnieuw"; } return(RedirectToAction("Index")); }