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

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

需求:

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

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

Autofac默认常识:

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

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

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

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

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

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

相关推荐
成钰4 天前
设计模式之抽象工厂模式:最复杂的工厂模式变种
java·设计模式·抽象工厂模式
WaWaJie_Ngen12 天前
【设计模式】工厂模式(Factory)
c++·设计模式·简单工厂模式·工厂方法模式·抽象工厂模式
Deschen15 天前
设计模式-抽象工厂模式
java·设计模式·抽象工厂模式
1710orange1 个月前
java设计模式:抽象工厂模式 + 建造者模式
java·设计模式·抽象工厂模式
yujkss1 个月前
23种设计模式之【抽象工厂模式】-核心原理与 Java实践
java·设计模式·抽象工厂模式
奔跑吧邓邓子1 个月前
【C++实战㊵】C++抽象工厂模式:解锁高效对象创建的密钥
c++·实战·抽象工厂模式
charlie1145141911 个月前
精读《C++20设计模式》:创造性模式——工厂方法和抽象工厂模式
学习·设计模式·简单工厂模式·工厂方法模式·抽象工厂模式·c++20·嵌套工厂模式
bkspiderx1 个月前
C++设计模式之创建型模式:抽象工厂模式(Abstract Factory)
c++·设计模式·抽象工厂模式
大飞pkz2 个月前
【设计模式】C#反射实现抽象工厂模式
设计模式·c#·抽象工厂模式·c#反射·c#反射实现抽象工厂模式
努力也学不会java2 个月前
【设计模式】抽象工厂模式
java·设计模式·oracle·抽象工厂模式