public IActionResult EditAddress(UserDetailViewModel model)
        {
            if (ModelState.IsValid)
            {
                //remove all addresses
                Expression <Func <UserDetail, object> >[] include =
                {
                    u => u.Address
                };

                UserDetail userDetail = userDetailService.Find(model.ID, include);
                addressService.Delete(userDetail.Address.ID);
                addressService.Save();

                userDetail.Address  = mapper.Map <Address>(model.Address);
                userDetail.MobileNo = model.MobileNo;
                userDetailService.Update(userDetail);
                userDetailService.Save();

                HttpContext.Response.StatusCode = (int)HttpStatusCode.Created;
                return(new JsonResult("Address Saved!"));
            }

            HttpContext.Response.StatusCode = (int)HttpStatusCode.OK;
            return(PartialView(model));
        }
 public async Task <IActionResult> Add([FromBody] UserDetailDto user)
 {
     try
     {
         _userService.Save(user);
         return(CreatedAtAction(nameof(GetById), new { version = HttpContext.GetRequestedApiVersion().ToString(), id = user.Id }, user));
     }
     catch (Exception e)
     {
         _loggerManager.LogError($"Ocurrio un error cuando se intentaba guardar el user: {e}");
         throw new ApiException(AppResources.BadRequest, HttpStatusCode.BadRequest);
     }
 }