Design patterns 同一演示者使用不同的存储库
您是否使用MVP模式管理使用不同存储库的同一演示者 我只是有多个构造函数重载,演示者只使用适合场景的构造函数Design patterns 同一演示者使用不同的存储库,design-patterns,Design Patterns,您是否使用MVP模式管理使用不同存储库的同一演示者 我只是有多个构造函数重载,演示者只使用适合场景的构造函数 AddCustomerPresenter presenter = new AddCustomerPresenter(this,customerRepository); presenter.AddCustomer(); presenter = new AddCustomerPresenter(this,archiveRepository); presenter.Archive();
AddCustomerPresenter presenter = new AddCustomerPresenter(this,customerRepository);
presenter.AddCustomer();
presenter = new AddCustomerPresenter(this,archiveRepository);
presenter.Archive();
为什么不呢
IRepository { /* .. */ }
CustomerRepository : IRepository { /* .. */ }
ArchiveRepository : IRepository { /* .. */ }
然后
AddCustomerPresenter {
IRepository Store {get;set;}
public AddCustomerPresenter(IRepository store) { /*...*/ }
/*...*/
}
演示者不应对IRepository的任何实现具有任何静态依赖性。如果你发现没有其他方法,你需要重新设计你的设计,因为它可能有缺陷。谢谢
但客户档案馆和档案馆并没有任何联系。它们是两个完全不同的东西