Theo MSDN các DbSet:Tại sao tôi nên xây dựng một mô hình kho lưu trữ với một đơn vị công việc trên đầu EF của tôi?
DbSet<TEntity> Class
Một
DbSet represents the collection of all entities in the context
, hoặc có thể được truy vấn từ cơ sở dữ liệu, của một loại nhất định. Các đối tượng DbSet được tạo từ một DbContext bằng phương thức DbContext.Set.
Và theo MSDN các DbContext:
DbContext Class
Một
DbContext instance represents a combination of the Unit Of Work and
Repository patterns
như vậy mà nó có thể được sử dụng để truy vấn từ một cơ sở dữ liệu và nhóm lại với nhau thay đổi mà sau đó sẽ được được viết lại cho cửa hàng làm đơn vị. DbContext là khái niệm tương tự như ObjectContext.
Vì vậy mà các EF
sử dụng repository pattern
và UOW
nội bộ.
DbSet < ----> Kho
DbContext < ----> đơn vị làm việc
Tại sao tôi nên xây dựng một mô hình kho với một đơn vị công việc trên đỉnh EF của tôi?
Bạn không nên. Mặc dù một lớp dịch vụ nơi bạn có thể củng cố logic kinh doanh của bạn là khôn ngoan. – Shoe