代码之家  ›  专栏  ›  技术社区  ›  c.sokun

城堡温莎在运行时交换服务

  •  1
  • c.sokun  · 技术社区  · 16 年前

    假设我们将税务服务的接口定义为ITaxService,并且我们有多个TaxService实现(按区域),但是我想将特定的税务实现附加到来自特定区域的特定客户。

    DI在这种情况下会有帮助吗?怎么样?”代码片段将非常感谢”

    1 回复  |  直到 16 年前
        1
  •  1
  •   jasondoucette    16 年前

    在不了解更多信息的情况下,这似乎是一种适合战略模式实现的方法。( http://en.wikipedia.org/wiki/Strategy_pattern )

    类似windsor的依赖注入工具可以作为工厂的一种形式来确定在给定情况下使用的正确策略(税务服务)(例如,键入区域标识符),但我更喜欢将工具用作对象存储库,而不是专门用于依赖注入。