0

我正在构建一个标准的三层应用程序。

1 个用于前端的控制台应用程序

2 业务逻辑层

3 数据层

主要目的是显示数据库表中的一些客户数据。

我试图遵循“.NET 中的依赖注入”一书中的指导方针,没有从控制台到数据层的引用,也没有从业务层到数据层的引用。如果需要,可以轻松交换前端和数据层。

假设我在业务层有一个名为 CustomerService 的服务,它有一个GetCustomers()方法

的构造函数CustomerService需要ICustomerRepository这样

 public class CustomerService 
 {
     ICustomerRepository repository; 

     public CustomerService(ICustomerRepository repository) 
     {
        this.repository = repository;
     }

     public ICollection<Customer> GetCustomers() 
     {
         return repository.GetCustomers();
     }
}

在我的数据层

public class CustomerRepository : BLL.ICustomerRepository 
{
    public ICollection<Customer> GetCustomers()
    {
         // get the customers from the db 
         return customers;
    }
}

在控制台应用程序中,我想使用 Ninject 调用创建 CustomerService 对象来满足 ICustomerRepository 依赖项。

 class DIModule : NinjectModule
 {
    public override void Load()
    {
        Bind<>(ICustomerRepository).To<??????????????>()
    }
 }

如何绑定到数据层 CustomerRepository 类?我必须将控制台应用程序的引用添加到数据层才能正常工作?我究竟做错了什么?

4

1 回答 1

1
Bind<ICustomerRepository>().To<CustomerRepository>();
于 2013-02-09T07:20:59.680 回答