我有3个组件Presenter,Business和DataAccess。 Presenter引用Business和Business引用DataAccess。错误构造函数重载模拟
我有一个CustomerBusiness类,在商业程序集中,有2个单参数构造函数。第一个构造函数仅用于测试以模拟数据访问对象。 DataAccess程序集中的ICustomerDataAccess。
class CustomerBusiness()
{
private ICustomerDataAccess _data= null;
public CustomerBusiness(ICustomerDataAccess data)
{
_data = data;
}
public CustomerBusiness(string language): this(new CustomerDataAccess("language"))
{}
public void SomeOtherMethods()
{
...
}
}
在CustomerPresenter类我写了下面这使错误数据访问组件未在演示referened代码。但我不想在Presenter中添加对DataAccess的引用。
VAR custBusiness =新CustomerBusiness(“英语”)
谁能推荐什么是实现这一目标的最佳方式,避免了在演示引用数据访问?
仅当存在两个单参数构造函数时才会出现此错误。 错误去的方式时,我有以下构造函数:
public CustomerBusiness(ICustomerDataAccess data, string language)
{
_data = data;
}
public CustomerBusiness(string language): this(new CustomerDataAccess("language"))
{}