代码之家  ›  专栏  ›  技术社区  ›  Rookian

StructureMap:如何为每个接口使用多个具体类

  •  1
  • Rookian  · 技术社区  · 14 年前

    如何计算StructureMap来为每个接口使用多个具体类。 i、 e.IRepositoryCustomer由以下人员实现:RepositoryCustomerA和RepositoryCustomerB

    如何在StructureMap IoC容器中注册和解析此内容?

    1 回复  |  直到 14 年前
        1
  •  2
  •   ladenedge    14 年前

    您首先需要回答这样一个问题:“我什么时候需要RepositoryCustomerA而不是RepositoryCustomerB?”

    如果这些类中的任何一个可以在生产环境中基于某个运行时状态进行实例化,那么您可能需要研究 conditional object construction

    如果RepositoryCustomerA应该在开发时实例化(例如,对于单元测试),而RepositoryCustomerB是生产模拟,那么您需要两个不同的 Registry s:一个只存在于测试代码中,另一个可以在生产环境中访问。有关此路线的更多信息,请阅读 creating registries 作为配置StructureMap的一种方法。