private Task HandleExceptionAsync(HttpContext context, Exception exception) { bool allowTraceDev = env.IsDevelopment(); allowTraceDev = false; var message = ((allowTraceDev) ? exception.StackTrace : exception.Message); var statuscode = GetStatusCode(exception); if (exception.InnerException != null) { logger.LogError(exception, "Inner Exception : " + exception.InnerException.Message); message = message + (allowTraceDev ? exception.InnerException.StackTrace : exception.InnerException.Message); } if (exception is SqlException) { //resp = AppResponse.BadRequest("Server Error"); logger.LogError(exception, "Sql Exception : " + exception.Message); } else if (exception is AppException) { statuscode = 400; logger.LogError(exception, "AppException : " + exception.Message); } else { logger.LogError(exception, "Unknown Exception : " + exception.Message); } context.Response.ContentType = "application/json"; context.Response.StatusCode = statuscode; var resp = AppResponse.SystemError(message); return(context.Response.WriteAsync(JsonConvert.SerializeObject(resp, Formatting.Indented))); }