public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext) { var objectContent = actionExecutedContext.Response.Content as ObjectContent; if (objectContent != null) { var type = objectContent.ObjectType; //type of the returned object var value = objectContent.Value; //holding the returned value if (value.GetType() != typeof(NetbankingResponseObject)) { NetbankingResponseObject responseObject = new NetbankingResponseObject(); responseObject.dataObject = value; responseObject.hasError = false; objectContent.Value = responseObject; } } }
private void HandleException(Exception ex, IOwinContext context) { var request = context.Request; string ip = request.RemoteIpAddress; string stackTrace = ex.StackTrace; // add user details //Store error details to database and get a ID string errorId = "123"; logger.Error(stackTrace); NetbankingResponseObject errorResponse = new NetbankingResponseObject(); errorResponse.hasError = true; errorResponse.message = "Error details can be found with Error Id : " + errorId; context.Response.StatusCode = (int)HttpStatusCode.OK; context.Response.ContentType = "application/json"; context.Response.Write(JsonUtils.SerializeObject(errorResponse)); }