public async Task <ActionResult> CreateAsync(ContactUsForCreate model)
        {
            if (!ModelState.IsValid)
            {
                var errors = ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage).ToList();
                return(BadRequest(new ErrorResponse(HttpStatusCode.BadRequest, "Validation error", errors)));
            }

            var result = await _contactUsService.CreateContacUsAsync(model);

            return(result.Succeed ? NoContent() : BadRequest(new ErrorResponse(HttpStatusCode.BadRequest, "Create fail", result.Errors)));
        }
        public async Task <ProcessResult> CreateContacUsAsync(ContactUsForCreate model)
        {
            async Task action()
            {
                var contactUs = _mapper.Map <ContactUs>(model);

                contactUs.CreateDate = DateTime.UtcNow;
                _repoWrapper.ContactUs.Create(contactUs);
                if (await _repoWrapper.SaveAsync() <= 0)
                {
                    throw new Exception("Save fail");
                }
            }

            return(await Process.RunAsync(action));
        }