Theo như tôi đã học, IRepositorynên chứa CRUD. Sau đó, chúng tôi kế thừa điều này IRepositorytrong các Giao diện khác của chúng tôi như IProductvà triển khai IProductlớp cụ thể ProductRepository, với các phương thức như GetAllProducts(), Top5Products().
Chúng ta cũng có thể làm tương tự với kiến trúc n-tier. như, Tạo DAL Class Libraryvà trong nó định nghĩa một lớp Productvới các phương thức như GetAllProducts(), Top5Products().
Trong cả hai DAL.Productvà Repo.ProductRepositorylớp chúng ta khởi tạo DB Contextcủa Entity Frameworkvà truy vấn dữ liệu có liên quan của chúng tôi.
Cuộc gọi tương tự trong cả hai Repo.ProductRepositoryhoặc DAL.Productphương thức từBLL
Theo quan điểm của những điểm tương đồng này, câu hỏi của tôi về lợi ích của Repos là gì? Tôi có thể làm tương tự với nhiều dễ dàng sử dụng kiến trúc n-tier với ( Controller, BLL Class Library, DAL Class Library).