示例#1
0
        public bool Postuser_book(user_book user_book)
        {
            bookEntities ctx = new bookEntities();

            ctx.user_book.Add(user_book);

            try
            {
                ctx.SaveChanges();
            }
            catch (DbUpdateException)
            {
                var like_book = ctx.user_book.Where(x => x.username == user_book.username && x.bookid == user_book.bookid && x.type == user_book.type);

                if (like_book != null)
                {
                    return(false);
                }
                else
                {
                    throw;
                }
            }

            return(true);
        }
示例#2
0
        public book_info BookDetail(int id)
        {
            bookEntities ctx       = new bookEntities();
            var          book_info = ctx.book_info.Where(x => x.id == id).ToList();

            return(book_info[0]);
        }
示例#3
0
        public IEnumerable <book_info> BookNewList()
        {
            bookEntities ctx       = new bookEntities();
            var          book_info = ctx.book_info.OrderByDescending(x => x.publish_date).Take(10).ToList();

            return(book_info);
        }
示例#4
0
        public IEnumerable <book_info> BookRatingList()
        {
            bookEntities ctx       = new bookEntities();
            var          book_info = ctx.book_info.OrderByDescending(x => x.rating_num).Take(10).ToList();

            return(book_info);
        }
示例#5
0
        public IEnumerable <book_info> SearchType(string name, int page, int size)
        {
            bookEntities ctx       = new bookEntities();
            var          book_info = (from b in ctx.book_info where b.tags.Contains(name) select b)
                                     .OrderByDescending(x => x.score).Skip(page * size).Take(size).ToList();

            return(book_info);
        }
示例#6
0
        public bool Postcomment(comment comment)
        {
            bookEntities ctx = new bookEntities();

            ctx.comment.Add(comment);
            ctx.SaveChanges();

            return(true);
        }
示例#7
0
        public bool Deletecomment(comment comment)
        {
            bookEntities ctx = new bookEntities();
            comment      c   = ctx.comment.Find(comment.commentid);

            if (c == null)
            {
                return(false);
            }

            ctx.comment.Remove(c);
            ctx.SaveChanges();

            return(true);
        }
示例#8
0
        public IEnumerable <book_info> Recommend(string name, int page, int size)
        {
            bookEntities ctx = new bookEntities();

            var recommend = (from u in ctx.user_book
                             join b in ctx.book_info on u.bookid equals b.id
                             where u.username == name && u.type == "1"
                             select new { b.author, b.tags, u.time }).OrderByDescending(u => u.time).Take(1).ToList();

            string author = recommend[0].author;
            string tags   = recommend[0].tags;

            string[] tag = tags.Split(',');
            tags = tag[0];

            var book_info = (from b in ctx.book_info where ((b.author.Contains(author)) || (b.tags.Contains(tags))) select b)
                            .OrderByDescending(x => x.score).Skip(page * size).Take(size).ToList();

            return(book_info);
        }