예제 #1
0
        public void Update(User item)
        {
            User user = db.Users.Find(item.Id);

            user.Login           = item.Login;
            user.Name            = item.Name;
            user.Password        = item.Password;
            user.Email           = item.Email;
            db.Entry(user).State = EntityState.Modified;
        }
예제 #2
0
        public void Update(Session item)
        {
            var toChange = db.Sessions.Find(item.Id);

            toChange.Commentary = item.Commentary;
            if (toChange.EndTime == null)
            {
                toChange.EndTime = DateTime.Now;
            }
            db.Entry(toChange).State = EntityState.Modified;
        }
예제 #3
0
        public void Update(Company item)
        {
            //нашел компанию поменял данные
            var toChange = db.Сompanies.Find(item.Id);

            toChange.Name             = item.Name;
            toChange.EnteringPassword = item.EnteringPassword;

            bool wereDeleted = false; //флаг если были удалены пользователи

            //удаление пользователей
            for (int i = 0; i < toChange.Users.Count; i++)
            {
                if (item.Users.Find(n => n.Id == toChange.Users[i].Id) == null)
                {
                    toChange.Users.Remove(toChange.Users[i]);
                    wereDeleted = true;
                }
            }
            //добавление пользователей
            if (!wereDeleted)
            {
                for (int i = 0; i < item.Users.Count; i++)
                {
                    if (toChange.Users.Find(n => n.Id == item.Users[i].Id) == null)
                    {
                        var user = db.Users.Find(item.Users[i].Id);
                        if (user != null)
                        {
                            toChange.Users.Add(user);
                        }
                    }
                }
            }
            db.Entry(toChange).State = EntityState.Modified;
        }