Autofac中多个类继承同一个接口,如何注入?与抽象工厂模式相结合

多个类继承同一个接口,如何注入?与抽象工厂模式相结合

需求:

原来是抽象工厂模式,多个类继承同一个接口。

现在需要使用Autofac进行选择性注入。

Autofac默认常识:

Autofac中多个类继承同一个接口,默认是最后一个接口注入的类。

解决方案:(约定大于配置)

:①工厂名默认4位字符 ② 命名Service的时候以工厂名开头

③Autofac注入的时候先注册匹配非工厂名开头的Service,后注册匹配工厂名开头的Service

与抽象工厂模式比,Autofac注入优势:

抽象工厂模式中如下图中的代码无需编写。

相关推荐
大飞pkz1 天前
【设计模式】C#反射实现抽象工厂模式
设计模式·c#·抽象工厂模式·c#反射·c#反射实现抽象工厂模式
努力也学不会java1 天前
【设计模式】抽象工厂模式
java·设计模式·oracle·抽象工厂模式
LoveXming1 天前
Chapter5—抽象工厂模式
抽象工厂模式
青草地溪水旁1 天前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(2)
c++·设计模式·抽象工厂模式
青草地溪水旁1 天前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(1)
c++·设计模式·抽象工厂模式
Meteors.12 天前
23种设计模式——抽象工厂模式(Abstract Factory Pattern)详解
设计模式·抽象工厂模式
柯南二号13 天前
【Android】【设计模式】抽象工厂模式改造弹窗组件必知必会
android·设计模式·抽象工厂模式
hai_qin24 天前
三,设计模式-抽象工厂模式
c++·设计模式·抽象工厂模式
o0向阳而生0o1 个月前
93、23种设计模式之抽象工厂模式
设计模式·抽象工厂模式
哈基米喜欢哈哈哈1 个月前
设计模式(一)——抽象工厂模式
设计模式·抽象工厂模式