public virtual void Update(ResourceAssignmentViewModel assignment)
        {
            var entity = assignment.ToEntity();

            db.GanttResourceAssignments.Attach(entity);
            db.Entry(entity).State = EntityState.Modified;
            db.SaveChanges();
        }
示例#2
0
 public virtual void Update(EmployeeDirectoryModel employee, ModelStateDictionary modelState)
 {
     if (ValidateModel(employee, modelState))
     {
         var entity = employee.ToEntity();
         db.EmployeeDirectories.Attach(entity);
         db.Entry(entity).State = EntityState.Modified;
         db.SaveChanges();
     }
 }
        public virtual void Update(TaskViewModel task, ModelStateDictionary modelState)
        {
            if (ValidateModel(task, modelState))
            {
                if (string.IsNullOrEmpty(task.Title))
                {
                    task.Title = "";
                }

                var entity = task.ToEntity();
                db.Tasks.Attach(entity);
                db.Entry(entity).State = EntityState.Modified;
                db.SaveChanges();
            }
        }
示例#4
0
        public virtual void Update(MeetingViewModel meeting, ModelStateDictionary modelState)
        {
            if (ValidateModel(meeting, modelState))
            {
                if (string.IsNullOrEmpty(meeting.Title))
                {
                    meeting.Title = "";
                }

                var entity = meeting.ToEntity();
                db.Meetings.Attach(entity);
                db.Entry(entity).State = EntityState.Modified;

                var oldMeeting = db.Meetings
                                 .Include(model => model.MeetingAttendees)
                                 .FirstOrDefault(m => m.MeetingID == meeting.MeetingID);

                foreach (var attendee in oldMeeting.MeetingAttendees.ToList())
                {
                    db.MeetingAttendees.Attach(attendee);

                    if (meeting.Attendees == null || !meeting.Attendees.Contains(attendee.AttendeeID))
                    {
                        db.Entry(attendee).State = EntityState.Deleted;
                    }
                    else
                    {
                        db.Entry(attendee).State = EntityState.Unchanged;

                        ((List <int>)meeting.Attendees).Remove(attendee.AttendeeID);
                    }

                    entity.MeetingAttendees.Add(attendee);
                }

                if (meeting.Attendees != null)
                {
                    foreach (var attendeeId in meeting.Attendees)
                    {
                        var meetingAttendee = new MeetingAttendee
                        {
                            MeetingID  = entity.MeetingID,
                            AttendeeID = attendeeId
                        };

                        db.MeetingAttendees.Attach(meetingAttendee);
                        db.Entry(meetingAttendee).State = EntityState.Added;

                        entity.MeetingAttendees.Add(meetingAttendee);
                    }
                }

                db.SaveChanges();
            }
        }