public HttpResponseMessage GetById(HttpRequestMessage request,
                                           [FromBody] PostViewModel postViewModel)
        {
            TransactionalInformation transactionalInformation;
            HttpResponseMessage      response;
            var postId  = postViewModel.ID;
            var postDto = _postBusinessService.GetPost(postId, out transactionalInformation);

            if (transactionalInformation.ReturnStatus == false)
            {
                postViewModel.ReturnStatus     = false;
                postViewModel.ReturnMessage    = transactionalInformation.ReturnMessage;
                postViewModel.ValidationErrors = transactionalInformation.ValidationErrors;

                var responseError = request.CreateResponse(HttpStatusCode.BadRequest, postViewModel);
                return(responseError);
            }
            else
            {
                postViewModel.CopyFromPostDTO(postDto);
                postViewModel.ReturnStatus  = true;
                postViewModel.ReturnMessage = transactionalInformation.ReturnMessage;
                response = request.CreateResponse(HttpStatusCode.OK, postViewModel);
            }

            return(response);
        }
        /// <summary>
        /// The GetPostDetail
        /// </summary>
        /// <param name="_postBusinessService">The _postBusinessService<see cref="IPostBusinessService"/></param>
        /// <param name="id">The id<see cref="int"/></param>
        /// <returns>The <see cref="PostViewModel"/></returns>
        public static PostViewModel GetPostDetail(IPostBusinessService _postBusinessService, int id)
        {
            var transaction = new TransactionalInformation();
            var posts       = _postBusinessService
                              .GetPost(id, out transaction);
            var postViewModel = new PostViewModel();

            if (transaction.ReturnStatus == false)
            {
                postViewModel.ReturnStatus     = false;
                postViewModel.ReturnMessage    = transaction.ReturnMessage;
                postViewModel.ValidationErrors = transaction.ValidationErrors;

                //var responseError = Request.CreateResponse(HttpStatusCode.BadRequest, productCategoryViewModel);
                //return responseError;
            }
            else
            {
                postViewModel.ReturnStatus  = true;
                postViewModel.ReturnMessage = transaction.ReturnMessage;

                postViewModel.Alias           = posts.Alias;
                postViewModel.CategoryName    = posts.CategoryName;
                postViewModel.Content         = posts.Content;
                postViewModel.Description     = posts.Description;
                postViewModel.CreatedBy       = posts.CreatedBy;
                postViewModel.CreatedDate     = posts.CreatedDate;
                postViewModel.UpdatedBy       = posts.UpdatedBy;
                postViewModel.UpdatedDate     = posts.UpdatedDate;
                postViewModel.MetaDescription = posts.MetaDescription;
                postViewModel.MetaKeyword     = posts.MetaKeyword;
                postViewModel.Image           = posts.Image;

                postViewModel.Pager = transaction.Pager;
            }

            return(postViewModel);
        }