/// <summary> /// Returns a genre by name. /// </summary> /// <param name="name"></param> /// <returns></returns> public Genre Get(string name) { using (libraryContext = generator.Generate()) { return(libraryContext.Genres.SingleOrDefault(genre => genre.Name == name)); } }
/// <summary> /// Returns the books associated with a given genre. /// </summary> /// <param name="genreName"></param> /// <returns></returns> public List <Book> GetBooks(string genreName) { using (libraryContext = generator.Generate()) { Genre genre = libraryContext.Genres.SingleOrDefault(genre => genre.Name == genreName); List <int> bookId = libraryContext.BooksGenres.Where(booksgenre => booksgenre.GenreId == genre.Id).Select(booksgenre => booksgenre.BookId).ToList(); return(libraryContext.Books.Where(book => bookId.Contains(book.Id)).ToList()); } }
/// <summary> /// Returns a client by id. /// </summary> /// <param name="id"></param> /// <returns></returns> public Client Get(int id) { using (libraryContext = generator.Generate()) { return(libraryContext.Clients.Find(id)); } }
/// <summary> /// Returns a publisher by name. /// </summary> /// <param name="name"></param> /// <returns></returns> public Publisher Get(string name) { using (libraryContext = generator.Generate()) { return(libraryContext.Publishers.SingleOrDefault(publisher => publisher.Name == name)); } }
/// <summary> /// Returns Book with corresponding title. /// </summary> /// <param name="title"></param> /// <returns></returns> public Book Get(string title) { using (libraryContext = generator.Generate()) { return(libraryContext.Books.SingleOrDefault(book => book.Title == title)); } }