我的申请包括三个项目。核心,DAL和BAL。
核心包含域对象(客户,订单,产品)。它还包含基本的IRepository接口IRepository <T>.
DAL包含EntityFramework特定内容。它还包含Concrete Repositories(CustomerRepository,OrderRepository,ProductRepository)。我在这里添加了这些具体的存储库,因为它们依赖于DbContext(这是EF特定的)
现在我的BAL应该只依赖于Core而不依赖于DAL。我在这个项目中添加了对NInject的依赖。但是,我仍然需要告诉Ninject它应该将IRepository <Customer>
解析为CustomerRepository,这迫使我在这里添加DAL依赖。有没有避免在我的BAL项目中添加对DAL的依赖?