Exemple #1
0
        public IActionResult Edit(int id, [Bind("Id,Delivery,EMail,FirstName,Icq,LastName,Login,Password")] User user)
        {
            if (id != user.Id)
            {
                return(NotFound());
            }
            User oldUser = userDAO.Get(id);

            user.Password  = oldUser.Password;
            user.CreatedAt = oldUser.CreatedAt;
            userDAO.Detach(oldUser);
            ModelState.Remove("Password");
            if (ModelState.IsValid)
            {
                try {
                    userDAO.Update(user);
                }
                catch (Exception ex)
                {
                    Console.Write(ex.ToString());
                    if (ex.ToString().Contains("Duplicate entry") && ex.ToString().Contains("login"))
                    {
                        ModelState.AddModelError("Login", "Duplicate entry detected!");
                    }
                    else if (ex.ToString().Contains("Duplicate entry") && ex.ToString().Contains("e-mail"))
                    {
                        ModelState.AddModelError("EMail", "Duplicate entry detected!");
                    }
                    return(View(user));
                }
                return(RedirectToAction("Index"));
            }
            return(View(user));
        }