Пример #1
0
        public void InsertByMemberId(int memberId, Dictionary <string, string> news)
        {
            using (ABGNDBEntities context = new ABGNDBEntities())
            {
                string link        = news["link"];
                var    scrap       = context.Scraps.FirstOrDefault(x => x.Link == link);
                var    LoginedUser = context.Members.FirstOrDefault(x => x.MemberId == memberId);

                foreach (var sc in LoginedUser.Scraps)
                {
                    if (sc == scrap)
                    {
                        return;
                    }
                }

                if (scrap == null)
                {
                    scrap              = new Scrap();
                    scrap.PubDate      = DateTime.Now;
                    scrap.Title        = news["title"];
                    scrap.Description  = news["description"];
                    scrap.Link         = news["link"];
                    scrap.OriginalLink = news["originalLink"];
                }

                LoginedUser.Scraps.Add(scrap);
                context.SaveChanges();
            }
        }
Пример #2
0
 public int GetCount(Expression <Func <T, bool> > predicate)
 {
     using (ABGNDBEntities context = new ABGNDBEntities())
     {
         return(context.Set <T>().Count(predicate));
     }
 }
Пример #3
0
        public void InsertKeyword(int memberId, string str)
        {
            using (var context = new ABGNDBEntities())
            {
                // keyword 유무 확인
                var keyword = context.Keywords.FirstOrDefault(x => x.PushName == str);

                // member 에 keyword 있는지 확인
                var member = context.Members.FirstOrDefault(x => x.MemberId == memberId);

                foreach (var kw in member.Keywords)
                {
                    if (kw == keyword)
                    {
                        return;
                    }
                }

                // keyword 테이블에 없을 시 새로 생성
                if (keyword == null)
                {
                    keyword          = new Keyword();
                    keyword.PushDate = DateTime.Now;
                    keyword.PushName = str;
                }

                // 매핑 테이블에 추가
                member.Keywords.Add(keyword);
                context.SaveChanges();
            }
        }
Пример #4
0
 public Member GetLastMember()
 {
     using (ABGNDBEntities context = new ABGNDBEntities())
     {
         return(context.Members.OrderByDescending(x => x.MemberId).First());
     }
 }
Пример #5
0
 //getByPK
 public Member GetByPK(int memberId)
 {
     using (ABGNDBEntities context = new ABGNDBEntities())
     {
         return(context.Members.FirstOrDefault(x => x.MemberId == memberId));
     }
 }
Пример #6
0
 //로그인 체크 기능
 public Member GetMember(string idText, string pwText)
 {
     using (ABGNDBEntities context = new ABGNDBEntities())
     {
         return(context.Members.FirstOrDefault(x => (x.Id == idText && x.Password == pwText)));
     }
 }
Пример #7
0
        public void Delete(T entity)
        {
            using (ABGNDBEntities context = new ABGNDBEntities())
            {
                context.Entry(entity).State = System.Data.Entity.EntityState.Deleted;

                context.SaveChanges();
            }
        }
Пример #8
0
        public void Insert(T entity)
        {
            using (ABGNDBEntities context = new ABGNDBEntities())
            {
                context.Set <T>().Add(entity);
                context.Entry(entity).State = System.Data.Entity.EntityState.Added;

                context.SaveChanges();
            }
        }
Пример #9
0
        public void DeleteKeyword(int memberId, string str)
        {
            using (var context = new ABGNDBEntities())
            {
                var keyword = context.Keywords.FirstOrDefault(x => x.PushName == str);

                context.Members.FirstOrDefault(x => x.MemberId == memberId).Keywords.Remove(keyword);
                context.SaveChanges();
            }
        }
Пример #10
0
        public void DeleteScrap(int memberId, string link)
        {
            using (ABGNDBEntities context = new ABGNDBEntities())
            {
                var scrap  = context.Scraps.FirstOrDefault(x => x.Link == link);
                var member = context.Members.FirstOrDefault(x => x.MemberId == memberId);

                member.Scraps.Remove(scrap);
                context.SaveChanges();
            }
        }
Пример #11
0
 public List <Keyword> GetByMemberId(int memberId)
 {
     using (var context = new ABGNDBEntities())
     {
         return(context.Members
                .Where(x => x.MemberId == memberId)
                .FirstOrDefault()
                .Keywords
                .OrderByDescending(x => x.KeywordId)
                .ToList());
     }
 }
Пример #12
0
        public List <T> GetAll(Expression <Func <T, bool> > predicate = null)
        {
            using (ABGNDBEntities context = new ABGNDBEntities())
            {
                IQueryable <T> query = context.Set <T>();

                if (predicate != null)
                {
                    query = query.Where(predicate);
                }

                return(query.ToList());
            }
        }
Пример #13
0
        //한 회원이 스크랩한 기사들의 목록
        public List <Scrap> GetByMemberId(int memberId)
        {
            using (ABGNDBEntities context = new ABGNDBEntities())
            {
                var query = (from scrap in context.Scraps
                             from member in scrap.Members
                             select new
                {
                    Scrap = scrap,
                    MemberName = member.Name,
                    MemberId = member.MemberId
                }).Where(x => x.MemberId == memberId)
                            .OrderByDescending(x => x.Scrap.ScrapId);

                var list = query.ToList();
                foreach (var item in list)
                {
                    item.Scrap.MemberName = item.MemberName;
                }

                return(list.ConvertAll(x => x.Scrap));
            }
        }