Esempio n. 1
0
        public ActionResult Edit(UsuarioView view)
        {
            if (ModelState.IsValid)
            {
                var db2     = new PersonalContext();
                var oldUser = db2.Usuarios.Find(view.Usuario.UserId);
                db2.Dispose();

                if (view.Foto != null)
                {
                    var pic = Uteis.UploadPhoto(view.Foto);
                    if (!string.IsNullOrEmpty(pic))
                    {
                        view.Usuario.Photo = string.Format("~/Content/Fotos/{0}", pic);
                    }
                }
                else
                {
                    view.Usuario.Photo = oldUser.Photo;
                }


                db.Entry(view.Usuario).State = EntityState.Modified;

                try
                {
                    if (oldUser != null && oldUser.UserName != view.Usuario.UserName)
                    {
                        Uteis.ChangeEmailUserAsp(oldUser.UserName, view.Usuario.UserName);
                    }
                    db.SaveChanges();
                }
                catch (Exception ex)
                {
                    ModelState.AddModelError(string.Empty, ex.Message);
                    return(View(view));
                }

                return(RedirectToAction("Index"));
            }
            return(View(view.Usuario));
        }
        public IHttpActionResult PutUsuario(int id, Usuario usuario)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != usuario.UserId)
            {
                return(BadRequest());
            }

            var db2     = new PersonalContext();
            var oldUser = db2.Usuarios.Find(usuario.UserId);

            db2.Dispose();

            db.Entry(usuario).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
                if (oldUser != null && oldUser.UserName != usuario.UserName)
                {
                    Uteis.ChangeEmailUserAsp(oldUser.UserName, usuario.UserName);
                }
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!UsuarioExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(this.Ok(usuario));
        }