コード例 #1
0
ファイル: booksController.cs プロジェクト: catrubens/Henallux
        public IEnumerable<Book> searchBookByTitleOrEditorInDataBase(string wordSearch, string categorie)
        {
            categorie = categorie.Replace('_', ' ');
            List<Book> listBook = new List<Book>();
            List<Book> listBookNoDupli = new List<Book>();
            
            var queryResultTitle = (from b in db.books
                                    where b.CodeCategorie == categorie &&
                                    b.Title.Contains(wordSearch)
                                    select b).ToList();

            var queryResultEditor = (from b in db.books
                                     where b.CodeCategorie == categorie &&
                                     b.Editor.Contains(wordSearch)
                                     select b).ToList();

            var queryResultAuthor = (from a in db.authors
                                     where a.NameAuthor.Contains(wordSearch)
                                     select a.books.ToList()).ToList();
          
            foreach (var bT in queryResultTitle)
            {
                Book book = new Book();
                fillBook(book, bT);
                listBook.Add(book);
            }

            foreach (var bE in queryResultEditor)
            {
                Book book = new Book();
                fillBook(book, bE);
                listBook.Add(book);
            }

            foreach (var bA in queryResultAuthor)
            {
                foreach (var b in bA.Where(bc => bc.CodeCategorie == categorie))
                {
                    Book book = new Book();
                    fillBook(book, b);
                    listBook.Add(book);
                }
            }

            listBookNoDupli = listBook.Distinct().ToList();

            return listBookNoDupli;
        }
コード例 #2
0
ファイル: booksController.cs プロジェクト: catrubens/Henallux
        public IEnumerable<Book> getBooks30LastDays()
        {
            var dateOf30Days = DateTime.Now.Date.AddDays(-30);
            var queryResult = (from b in db.books
                               where b.DateEntry > dateOf30Days
                               select b).ToList();

            List<Book> listBook = new List<Book>();

            foreach (var b in queryResult)
            {
                Book book = new Book();
                fillBook(book, b);
                listBook.Add(book);
            }

            return listBook;
        }
コード例 #3
0
        // GET: api/authors
        public IEnumerable<Author> Getauthors()
        {
            var queryResult = db.authors.ToList();

            List<Author> listAuthor = new List<Author>();

            foreach (var a in queryResult)
            {
                Author author = new Author();
                author.NameAuthor = a.NameAuthor;
                author.NumAuthor = a.NumAuthor;
                List<Book> listBook = new List<Book>();

                foreach (var b in a.books)
                {
                    Book book = new Book();
                    book.NumBook = b.NumBook;
                    book.Title = b.Title;
                    book.Editor = b.Editor;
                    book.YearPublication = b.YearPublication;
                    book.DateEntry = b.DateEntry;
                    book.Rangement = b.Rangement;
                    book.Statut = b.Statut;

                    var queryResultCategorie = (from c in db.categories
                                                where c.CodeCategorie == b.CodeCategorie
                                                select c).First();

                    Categorie categorie = new Categorie();
                    categorie.CodeCategorie = queryResultCategorie.CodeCategorie;
                    categorie.LibelleCategorie = queryResultCategorie.LibelleCategorie;

                    book.Categorie = categorie;
                    book.NumberReservation = b.reservations.Count();
                    listBook.Add(book);
                }
                author.Book = listBook;

                listAuthor.Add(author);
            }

            return listAuthor;
        }
コード例 #4
0
ファイル: booksController.cs プロジェクト: catrubens/Henallux
        private void fillBook(Book book, book b)
        {
            book.NumBook = b.NumBook;
            book.Title = b.Title;
            book.Editor = b.Editor;
            book.YearPublication = b.YearPublication;
            book.DateEntry = b.DateEntry;
            book.Rangement = b.Rangement;
            book.Statut = b.Statut;

            var queryResultCategorie = (from c in db.categories
                                        where c.CodeCategorie == b.CodeCategorie
                                        select c).First();

            Categorie categorie = new Categorie();
            categorie.CodeCategorie = queryResultCategorie.CodeCategorie;
            categorie.LibelleCategorie = queryResultCategorie.LibelleCategorie;

            book.Categorie = categorie;

            List<Author> listAuthor = new List<Author>();
            foreach (var a in b.authors)
            {
                Author author = new Author();
                author.NumAuthor = a.NumAuthor;
                author.NameAuthor = a.NameAuthor;
                listAuthor.Add(author);
            }
            book.Author = listAuthor;

            book.NumberReservation = b.reservations.Count();
        }