public static void UpdateDanceGroups(int id, List <MemberDanceGroupModel> danceGroups) { using (var ctx = new DFAppEntities()) { var member = ctx.Members.Include(t => t.DanceGroupMembers).FirstOrDefault(m => m.MemberID == id); if (member != null) { if (member.DanceGroupMembers != null && member.DanceGroupMembers.Count() > 0) { for (int i = member.DanceGroupMembers.Count() - 1; i >= 0; i--) { ctx.DanceGroupMembers.Remove(member.DanceGroupMembers.ElementAt(i)); } } foreach (var danceGroupModel in danceGroups) { DBModel.DanceGroupMembers memberGroup = new DanceGroupMembers(); memberGroup.MemberID = id; memberGroup.DanceGroupID = danceGroupModel.DanceGroupID; ctx.DanceGroupMembers.Add(memberGroup); } ctx.SaveChanges(); } } }
public static void CreateMember(MemberModel model) { using (var ctx = new DFAppEntities()) { var existingJMBG = ctx.Members.FirstOrDefault(x => x.JMBG == model.JMBG); if (existingJMBG != null) { throw new Exception("error_members_jmbg_exists"); } DBModel.Members m = new DBModel.Members(); m.BirthDate = model.BirthDate; m.BirthPlace = model.BirthPlace; m.FirstName = model.FirstName; m.LastName = model.LastName; m.JMBG = model.JMBG; m.AgeCategoryID = model.AgeCategoryID; m.ProfileImage = model.ProfileImage; m.IsActive = true; m.Note = model.Note; if (model.IsCompetitor.HasValue) { m.IsCompetitor = (bool)model.IsCompetitor; } else { m.IsCompetitor = false; } m.ContactData = new ContactData(); m.ContactData.Address = model.ContactData.Address; m.ContactData.Email = model.ContactData.Email; m.ContactData.Phone1 = model.ContactData.Phone1; m.ContactData.Phone2 = model.ContactData.Phone2; m.ContactData.Phone3 = model.ContactData.Phone3; if (model.DanceGroupID.HasValue) { DanceGroupMembers dgMembers = new DanceGroupMembers(); dgMembers.DanceGroupID = (int)model.DanceGroupID; dgMembers.MemberID = m.MemberID; ctx.DanceGroupMembers.Add(dgMembers); } ctx.Members.Add(m); ctx.SaveChanges(); } }