コード例 #1
0
        public async Task <IList <string> > GetAuthorsOfBook(string isbn)
        {
            using (var context = new BookMonkeyContext(_dbOptions.Value.Connectionstring))
            {
                var book = await context.Books.FirstOrDefaultAsync(b => b.Isbn == isbn);

                var authors = book?.Author?.Split('/').Select(a => a.Trim()).Where(s => !string.IsNullOrWhiteSpace(s));

                return(authors.ToList());
            }
        }
コード例 #2
0
        public async Task UpdateBook(Book book)
        {
            using (var context = new BookMonkeyContext(_dbOptions.Value.Connectionstring))
            {
                var dbBook = await context.Books.Include(b => b.Publisher).FirstOrDefaultAsync(b => b.Id == book.BookId);

                dbBook.Isbn           = book.Isbn;
                dbBook.Abstract       = book.Abstract;
                dbBook.Publisher.Name = book.Publisher;
                dbBook.Subtitle       = book.Subtitle;
                dbBook.NumPages       = book.NumPages;
                dbBook.Author         = book.Author;
                dbBook.Title          = book.Title;

                await context.SaveChangesAsync();
            }
        }
コード例 #3
0
 public async Task <IList <Book> > GetAllBooks()
 {
     using (var context = new BookMonkeyContext(_dbOptions.Value.Connectionstring))
     {
         return(await context.Books.Include(b => b.Publisher).Select(b => new Book
         {
             BookId = b.Id,
             Isbn = b.Isbn,
             Abstract = b.Abstract,
             Publisher = b.Publisher.Name,
             Subtitle = b.Subtitle,
             NumPages = (int)b.NumPages,
             Author = b.Author,
             Title = b.Title
         }).ToListAsync());
     }
 }
コード例 #4
0
        public async Task <Book> GetByIsbn(string isbn)
        {
            using (var context = new BookMonkeyContext(_dbOptions.Value.Connectionstring))
            {
                var book = await context.Books.Include(b => b.Publisher).FirstOrDefaultAsync(b => b.Isbn == isbn);

                if (book == null)
                {
                    return(null);
                }

                return(new Book
                {
                    BookId = book.Id,
                    Isbn = book.Isbn,
                    Abstract = book.Abstract,
                    Publisher = book.Publisher.Name,
                    Subtitle = book.Subtitle,
                    NumPages = (int)book.NumPages,
                    Author = book.Author,
                    Title = book.Title
                });
            }
        }