示例#1
0
        public IActionResult GetOrderedByTitle([FromQuery] int?page,
                                               [FromQuery] int?qty)
        {
            var response = new ResponseDefault <ICollection <BookResponse> >();

            if (!page.HasValue || page <= 0)
            {
                page = 1;
            }
            if (!qty.HasValue || qty <= 0)
            {
                qty = 10;
            }
            var offset = (page - 1) * qty;

            var bookList = _bookList.GetOrderedByTitle(qty.Value, offset.Value);

            if (!_bookList.IsValid)
            {
                response.message = _bookList.GetErrorMessages();
                return(BadRequest(response));
            }

            if (bookList.Count == 0)
            {
                return(NoContent());
            }

            response.Data = bookList;
            return(Ok(response));
        }
示例#2
0
 private IActionResult ErrorResponse(List<string> errors)
 {
     var response = new ResponseDefault<object>();
     response.Data = null;
     response.message = string.Join("\n", errors);
     var result = new ObjectResult(response);
     result.StatusCode = StatusCodes.Status500InternalServerError;
     return result;
 }
示例#3
0
        protected IActionResult GetResponse<T>(T obj, int statusCodes = StatusCodes.Status200OK)
        {
            var response = new ResponseDefault<T>();
            response.Data = obj;

            var result = new ObjectResult(response);
            result.StatusCode = statusCodes;
            if (obj == null)
                result.StatusCode = StatusCodes.Status204NoContent;

            return result;
        }
示例#4
0
        public IActionResult Update([FromBody] BookRequest bookRequest)
        {
            var response     = new ResponseDefault <BookResponse>();
            var bookResponse = _bookUpdater.Execute(bookRequest);

            if (!_bookUpdater.IsValid)
            {
                response.message = _bookUpdater.GetErrorMessages();
                return(BadRequest(response));
            }
            response.Data = bookResponse;
            return(Ok(response));
        }
示例#5
0
        /// <summary>
        /// Create return json
        /// </summary>
        /// <typeparam name="TRes"></typeparam>
        /// <typeparam name="TData"></typeparam>
        /// <param name="statusCode"></param>
        /// <param name="msg"></param>
        /// <param name="data"></param>
        /// <param name="totalCount">记录条数,分页时使用</param>
        /// <returns></returns>
        protected JsonResult CreateResult <TData>(ResponseStatusCode statusCode, string msg = "", TData data = null, int totalCount = 0)
            where TData : class
        {
            ResponseDefault <TData> res = new ResponseDefault <TData>();

            res.result = (int)statusCode;
            res.msg    = msg;
            res.count  = totalCount;
            if (null != data)
            {
                res.data = data;
            }

            return(Json(res));
        }
        private static Task HandleExceptionResponseAsync(HttpContext context, int statusCode, string msg)
        {
            ResponseDefault <string> res = new ResponseDefault <string>()
            {
                result = statusCode, msg = msg
            };
            var result = JsonConvert.SerializeObject(res);

            context.Response.ContentType = "application/json;charset=utf-8";
            if (context.Request.Method == "POST")
            {
                context.Response.StatusCode = (int)HttpStatusCode.OK;
            }

            return(context.Response.WriteAsync(result));
        }
示例#7
0
        public IActionResult Delete(int id)
        {
            var response    = new ResponseDefault <BookResponse>();
            var bookRequest = new BookRequest {
                Id = id
            };
            var bookResponse = _bookRemover.Execute(bookRequest);

            if (!_bookRemover.IsValid)
            {
                response.message = _bookRemover.GetErrorMessages();
                return(BadRequest(response));
            }
            response.Data = bookResponse;
            return(Ok(response));
        }