public TaskExecutionResult Execute() { try { OnExecute(); return(TaskExecutionResult.Successful(this)); } catch (Exception ex) { CurrentRequestData.ErrorSignal.Raise(ex); return(TaskExecutionResult.Failure(this, ex)); } }