如何解决AutoFac / Unity容器-具有多种实现的依赖注入
我将为ASP.NET Web API项目使用依赖注入。
我了解构造函数依赖注入的工作原理,但是我无法解决如何使注入器在同一接口的两个实现之间进行选择。让我们举一个例子,我们有一个这样的接口:
public interface ISender
{
void Send();
void AddReceipment(User user);
}
然后可以说,我使用相同的SmsSender
接口对此MailSender
和ISender
进行了两种实现。
现在我有两个API控制器,可以将它们称为“ MailController”和“ SmsController”。
现在,我希望依赖注入器通过类ISender
的实现将MailSender
注入MailController,在SmsController中,我也希望注入ISender
,但是通过实现类SmsSender
。
使用AutoFac或Unity容器是否可能?
如果是,那我该怎么处理?
解决方法
根据Autofac文档,您可以通过4个选项来实现:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。