autofac - 可以注册 Autofac 装饰器以覆盖现有注册吗?
问题描述
给定多个类型注册到同一个接口,Autofac 在解析组件时使用最后注册的类型。
这种行为的一个例外似乎是 Autofac 的装饰器功能。给定一个类型在使用注册键控类型然后使用相同键注册装饰器的标准过程修饰类型之前或之后注册为 IDoSomething,返回的实例似乎是非修饰类型。
我正在使用我编写的用于装饰 IConsumer 实例的库遇到这种情况。该库的现有客户端当前具有首先按约定注册所有内容的模块,然后是特定模块以覆盖具有特定需求的注册(例如其他生命周期范围、自定义工厂逻辑等)。如果将基于约定的模块修改为对于实现 IConsumer 的类型有一个例外,但我宁愿不需要执行此异常,因为它与其他注册的处理方式不一致,如果您忘记或不知道要排除它只是调试的麻烦连接装饰器之前的类型。
有没有更好的解决方案?
解决方案
推荐阅读
- python - 在不持久的任务中完成的模型更改
- python - “flask_bootstrap.Bootstrap 对象”没有属性“load_css”
- mysql - 即使对于简单的查询,Mysql 也总是给出语法错误
- sql - 如何从该表的两列中查找同一表中重复值的不同值
- html - webpack捆绑后css文件名消失
- react-native - React Native 异步存储解析
- flutter - 有没有办法在颤动中更新静态方法
- python - 如何在 multiprocessing.Process 中将未腌制的对象作为参数传递?
- c# - 如何模拟(没有任何模拟框架)其类型参数的特定值的通用函数
- javascript - 使用 React Native 从 Firebase 获取数据