我的 ASP.NET MVC 应用程序中有 3 层。
- 表示层 (PL)
- 业务逻辑层 (BLL)
- 数据访问层 (DAL)
在 DAL 中,我有实体的实体和存储库:
public class Vehicle {}
public class Order {}
//and some other entities...
我将与他们一起使用 IRepository
public interface IRepository<T>
{
//CRUD operations with DB
}
public class VehicleRepository : IRepository<Vehicle> {}
public class OrderRepository : Irepository<VehicleType> {}
在 BLL 我有数据传输对象 (DTO)
public class VehicleDTO {}
public class OrderDTO {}
和服务
public class VehicleService : IService {}
public class OrderService : IService {}
所以 PL 层对我的 DAL 层一无所知。我在 DAL 中有存储库接口和具体类,它们在 BLL leyar 中使用。问题是,为了解耦 DAL 和 BLL,我该如何组织依赖注入?同样的问题也适用于 PL 和 BLL 层。