public ActionResult ErrorAction() { try { throw new OutOfMemoryException("Error button clicked"); } catch (OutOfMemoryException ome) { ErrorOrchestrator errorOrchestrator = new ErrorOrchestrator(ome); ErrorViewModel errorview = new ErrorViewModel(); //errorview.ErrorId = Guid.NewGuid(); errorview.ErrorMessage = ome.Message; // errorview.InnerExceptions = ome.InnerException; errorview.StackTrace = ome.StackTrace; /* * errorview.ErrorId = errorOrchestrator.ErrorId; * errorview.ErrorMessage = el.ErrorMessage; * errorview.ErrorDateTime = el.ErrorDateTime; * errorview.InnerExceptions = el.InnerExceptions; * errorview.StackTrace = el.StackTrace; */ return(View("Error", errorview)); } }
protected async void OnExceptionAsync(ExceptionContext exception) { exception.ExceptionHandled = true; ErrorOrchestrator errorOrch = new ErrorOrchestrator(); ErrorViewModel errorViewModel = new ErrorViewModel { ErrorId = Guid.NewGuid(), ErrorDate = DateTime.Now, StackTrace = exception.Exception.StackTrace, ErrorMessage = exception.Exception.Message }; if (exception.Exception.InnerException is null) { errorViewModel.InnerExceptions = "None"; } else { errorViewModel.InnerExceptions = exception.Exception.InnerException.ToString(); } await errorOrch.CreateErrorLog(errorViewModel); exception.Result = RedirectToAction("Error", "Error"); }
public ViewResult ErrorAction_2() { // return View("ErrorGenerator"); try { throw new OutOfMemoryException("Error button clicked"); } catch (OutOfMemoryException ome) { ErrorOrchestrator errorOrchestrator = new ErrorOrchestrator(ome); ErrorViewModel errorview = new ErrorViewModel(); errorview.ErrorMessage = ome.Message; // errorview.InnerExceptions = ome.InnerException.ToString(); errorview.StackTrace = ome.StackTrace; return(View("~Shared/Error")); } }