示例#1
0
        public void Update(TblMailingLists obj)
        {
            //throw new NotImplementedException();
            TblMailingLists mail = GetById(obj.Id);

            if (mail != null)
            {
                mail.Email = obj.Email;
                //mail.TblEmailGroupMapping.ad

                List <int> a = mail.TblEmailGroupMapping
                               .Select(x => x.MailingGroup.Value)
                               .ToList();

                List <int> b = obj.TblEmailGroupMapping
                               .Select(x => x.MailingGroup.Value)
                               .ToList();

                var a_except_b = a.Except(b).ToList(); //to remove
                var b_except_a = b.Except(a).ToList(); //to add

                List <TblEmailGroupMapping> toremove = mail.TblEmailGroupMapping
                                                       .Where(x => a_except_b.Contains(x.MailingGroup.Value))
                                                       .ToList();

                List <TblEmailGroupMapping> toadd = obj.TblEmailGroupMapping
                                                    .Where(x => b_except_a.Contains(x.MailingGroup.Value))
                                                    .ToList();

                Context.TblEmailGroupMapping.RemoveRange(toremove);
                Context.TblEmailGroupMapping.AddRange(toadd);

                Save(mail);
            }
        }
示例#2
0
        public void Delete(object id)
        {
            TblMailingLists m = GetById(id);

            Context.TblEmailGroupMapping.RemoveRange(
                m.TblEmailGroupMapping.ToList()
                );

            Context.TblMailingLists.Remove(m);

            Context.SaveChanges();
        }
示例#3
0
        public void UnmapToGrp(TblMailingLists mail, TlkpMailingGroups grp)
        {
            //throw new NotImplementedException();

            TblMailingLists m = GetById(mail.Id);

            TblEmailGroupMapping _gp = m.TblEmailGroupMapping
                                       .FirstOrDefault(x => x.MailingGroup == grp.Id);

            Context.Remove(_gp);

            Save(m);
        }
示例#4
0
        public void MapToGrp(TblMailingLists mail, TlkpMailingGroups grp)
        {
            TblMailingLists m = GetById(mail.Id);

            TblEmailGroupMapping _gp = m.TblEmailGroupMapping
                                       .FirstOrDefault(x => x.MailingGroup == grp.Id);

            if (_gp == null)
            {
                TblEmailGroupMapping mapping = new TblEmailGroupMapping();
                mapping.MailingGroupNavigation = grp;
                m.TblEmailGroupMapping.Add(mapping);
                Save(m);
            }
        }
示例#5
0
 public void Create(TblMailingLists obj)
 {
     //throw new NotImplementedException();
     Context.TblMailingLists.Add(obj);
     Save(obj);
 }
示例#6
0
 public void Save(TblMailingLists obj)
 {
     //throw new NotImplementedException();
     Context.SaveChanges();
     Context.Entry(obj).ReloadAsync();
 }