using [Link].
Abstraction;
using [Link];
namespace [Link]
{
public class BookRepository : IBookRepository
{
private readonly BookDbContext _dbContext;
public BookRepository(BookDbContext dbContext)
{
_dbContext = dbContext;
}
public void Add(Book entity)
{
_dbContext.[Link](entity);
_dbContext.SaveChanges();
}
public void Delete(Book entity)
{
_dbContext.[Link](entity);
_dbContext.SaveChanges();
}
public IEnumerable<Book> GetAll()
{
return _dbContext.Books;
}
public IEnumerable<Book> GetByGenre(string genre)
{
return GetAll().Where(x =>
[Link]().Contains([Link]()));
}
public Book GetById(int id)
{
return GetAll().SingleOrDefault(x => [Link] == id);
}
public Book GetByName(string name)
{
return GetAll().SingleOrDefault(x =>
[Link]().Contains([Link]()));
}
public FavoriteBooks GetFavoriteBook(int id)
{
return _dbContext.[Link](x => [Link] == id);
}
public void Update(Book entity)
{
Book book = GetById([Link]);
_dbContext.Entry(book).[Link](entity);
_dbContext.SaveChanges();
}
}
}