コード例 #1
0
        public ActionResult Create(UserDetailsViewModel model, HttpPostedFileBase image)
        {
            var name = User.Identity.Name;

            var user = _userService.GetUserByUserName(name);

            var userDetail = _detailService.GetDetailByUserId(user.Id);

            if (userDetail != null)
            {
                userDetail.FirstName = model.FirstName;
                userDetail.LastName  = model.LastName;
                userDetail.Adress    = model.Adress;
                userDetail.Age       = model.Age;

                user.Email = model.Email;

                _detailService.UpdataDetail(userDetail);
            }
            else
            {
                var newDetails = new UserDetails()
                {
                    FirstName = model.FirstName,
                    LastName  = model.LastName,
                    Adress    = model.Adress,
                    Age       = model.Age,
                    UserId    = user.Id,
                };

                user.Email = model.Email;

                _detailService.AddDetails(newDetails);
            }

            if (image != null)
            {
                var pitureBytes = new byte[image.ContentLength];
                image.InputStream.Read(pitureBytes, 0, image.ContentLength);

                _postService.ClearProfilePictureOnPost(user);
                _postService.AddPostToUser(user, "Change your profile picture ", pitureBytes, true);
            }

            return(RedirectToAction("Index", "DetaialUser"));
        }