Вот мой контроллер и код уровня обслуживания
public class BooksController : Controller
{
private IBookService _bookService;
public BooksController(IBookService bookService)
{
_bookService = bookService;
}
public BooksController()
{
}
// GET: Books
public ActionResult Index()
{
IEnumerable<Book> Books = _bookService.GetBooks().ToList();
return View(Books);
}
}
Это код моего соответствующего кода сервисного уровня.
class BookService:ServiceBase<Book>,IBookService
{
public BookService(IRepository<Book> repository, IUnitOfWork unitOfWork) : base(repository, unitOfWork)
{
}
public IEnumerable<Book> GetBooksByName(string name)
{
return string.IsNullOrEmpty(name) ? UnitOfWork.BookRepository.GetAll() : UnitOfWork.BookRepository.GetAll().Where(c => c.Name == name);
}
public IEnumerable<Book> GetBooks()
{
return UnitOfWork.BookRepository.GetAll();
}
}
Я не получаю никаких данных в представлении, скорее, это исключение нулевой ссылки. Я хочу знать, как работает код, потому что я новичок в шаблоне репозитория и не знаю, в чем проблема. Пожалуйста, помогите мне в этом отношении.
Я использую Unit of Work с шаблоном хранилища.