gdragon_septung
Senior Member
Em đang tìm hiểu về Unit Of Work kết hợp với Repository Pattern trong .NET Core nhưng còn nhiều chỗ chưa hiểu, các bác giải thích giúp em với? Link dưới đây:
http://thaotrinh.info/unit-of-work-va-repository-pattern-song-kiem-hop-bich/
Theo em hiểu thì mô hình Unit Of Work sẽ làm cho tất cả các Repository sử dụng chung 1 DBContext.
1. Bên phía class UnitOfWork trong constructor có truyền vào NorthwindContext khi khởi tạo OrderRepository
Trong constructor OrderRepository có nhận vào NorthwindContext, nhưng NorthwindContext này ở constructor em ko thấy được sử dụng ở đâu trong class OrderRepository?
2. Trong class UnitOfWork có 1 hàm Dispose, theo em hiểu là để giải phóng bộ nhớ? Có đúng ko? Vậy khi call Repository xong thì khi nào Dispose được gọi? Có cần phải gọi thủ công không? Hay chỉ cần kế thừa IDispose thì nó sẽ tự call?
http://thaotrinh.info/unit-of-work-va-repository-pattern-song-kiem-hop-bich/
Theo em hiểu thì mô hình Unit Of Work sẽ làm cho tất cả các Repository sử dụng chung 1 DBContext.
1. Bên phía class UnitOfWork trong constructor có truyền vào NorthwindContext khi khởi tạo OrderRepository
Trong constructor OrderRepository có nhận vào NorthwindContext, nhưng NorthwindContext này ở constructor em ko thấy được sử dụng ở đâu trong class OrderRepository?
Như vậy thì NorthwindContext truyền vào ở class UnitOfWork có ý nghĩa gì? Vì ở phía OrderRepository không thấy dùng đến?public OrderRepository(NorthwindContext context) : base(context)
{
}
2. Trong class UnitOfWork có 1 hàm Dispose, theo em hiểu là để giải phóng bộ nhớ? Có đúng ko? Vậy khi call Repository xong thì khi nào Dispose được gọi? Có cần phải gọi thủ công không? Hay chỉ cần kế thừa IDispose thì nó sẽ tự call?
public void Dispose()
{
_context.Dispose();
}