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()); } }
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(); } }
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()); } }
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 }); } }