服务定位器模式-如何处理同一服务接口的多个实现

本国的

我对服务定位器的设计模式有些困惑。

关于此模式,这似乎是一个非常非常基本的问题,但我无法弄清楚:如果我有多个实现某个IServiceX接口的类怎么办?定位器如何解决我要寻找的实例?

例如,我可以注册:

实现IServiceX的ServiceA实现IServiceX的ServiceB

似乎完全有可能,但我不确定。假设我有两种消息服务(相同的服务接口),并且想在运行时使用这两种实现。定位器如何在这些不同的实现方式之间进行选择?

罗伊·迪克特

那是有趣的部分。完全由您决定。

您可以遍历您的调用堆栈并弄清楚该调用来自何处,然后根据调用者的不同返回一个不同的实现。

您可能具有始终用于特定实现的Factory方法。

您可以根据一天中的某天,一周中的某天,可用的内存量等来返回实例。

这一切都取决于你!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

服务定位器模式-如何处理同一服务接口的多个实现

来自分类Dev

没有服务定位器的工厂模式

来自分类Dev

使用依赖注入(Autofac)并避免服务定位器模式

来自分类Dev

不带服务定位器的ViewModel注入

来自分类Dev

DI容器的服务定位器

来自分类Dev

Azure媒体服务定位器

来自分类Dev

没有服务定位器的IOC

来自分类Dev

服务定位器是可插拔体系结构中的反模式吗?

来自分类Dev

IOC 容器是否支持组合而不使用服务定位器模式?

来自分类Dev

根据自动加载程序是否检测到文件,返回适当类的设计模式?工厂,服务定位器等?

来自分类Dev

根据自动加载程序是否检测到文件,返回适当类的设计模式?工厂,服务定位器等?

来自分类Dev

WPF、MVVM IoC:服务定位器模式的替代方案。在后面的查看代码中需要依赖

来自分类Dev

服务定位器:获取所有出口

来自分类Dev

Moq服务定位器,用于单元测试

来自分类Dev

没有服务定位器的域事件

来自分类Dev

流定位器在Azure媒体服务中代表什么?

来自分类Dev

服务定位器:获取所有出口

来自分类Dev

Moq服务定位器,用于单元测试

来自分类Dev

依赖注入 - 试图避免使用服务定位器

来自分类Dev

定位器如何工作?

来自分类Dev

如何在 ZF3 中访问控制器内的服务定位器对象?

来自分类Dev

如何在 2 个单独的服务器上运行 2 个定位器

来自分类Dev

创建易失性接口实例-依赖注入与服务定位器

来自分类Dev

MVVM +服务+实体框架和依赖注入与服务定位器

来自分类Dev

MVVM +服务+实体框架和依赖注入与服务定位器

来自分类Dev

从 Azure 媒体服务的定位器流返回 URL 到 C# 中的控制器

来自分类Dev

ZF2如何在抽象实体类中注入服务定位器或插件

来自分类Dev

使用服务定位器时如何编写ActionFilter的单元测试

来自分类Dev

如何设置服务定位器以测试MVVM中的视图模型

Related 相关文章

  1. 1

    服务定位器模式-如何处理同一服务接口的多个实现

  2. 2

    没有服务定位器的工厂模式

  3. 3

    使用依赖注入(Autofac)并避免服务定位器模式

  4. 4

    不带服务定位器的ViewModel注入

  5. 5

    DI容器的服务定位器

  6. 6

    Azure媒体服务定位器

  7. 7

    没有服务定位器的IOC

  8. 8

    服务定位器是可插拔体系结构中的反模式吗?

  9. 9

    IOC 容器是否支持组合而不使用服务定位器模式?

  10. 10

    根据自动加载程序是否检测到文件,返回适当类的设计模式?工厂,服务定位器等?

  11. 11

    根据自动加载程序是否检测到文件,返回适当类的设计模式?工厂,服务定位器等?

  12. 12

    WPF、MVVM IoC:服务定位器模式的替代方案。在后面的查看代码中需要依赖

  13. 13

    服务定位器:获取所有出口

  14. 14

    Moq服务定位器,用于单元测试

  15. 15

    没有服务定位器的域事件

  16. 16

    流定位器在Azure媒体服务中代表什么?

  17. 17

    服务定位器:获取所有出口

  18. 18

    Moq服务定位器,用于单元测试

  19. 19

    依赖注入 - 试图避免使用服务定位器

  20. 20

    定位器如何工作?

  21. 21

    如何在 ZF3 中访问控制器内的服务定位器对象?

  22. 22

    如何在 2 个单独的服务器上运行 2 个定位器

  23. 23

    创建易失性接口实例-依赖注入与服务定位器

  24. 24

    MVVM +服务+实体框架和依赖注入与服务定位器

  25. 25

    MVVM +服务+实体框架和依赖注入与服务定位器

  26. 26

    从 Azure 媒体服务的定位器流返回 URL 到 C# 中的控制器

  27. 27

    ZF2如何在抽象实体类中注入服务定位器或插件

  28. 28

    使用服务定位器时如何编写ActionFilter的单元测试

  29. 29

    如何设置服务定位器以测试MVVM中的视图模型

热门标签

归档