我希望能够在 Autofac 中注册具有以下属性的工厂组件:
- 工厂必须接受一个参数(在这种情况下是一个字符串),并返回一个与该字符串特别相关的组件实例
- 组件的生命周期必须是 InstancePerLifetimeScope
- #2 的含义是第二次调用具有特定参数值的工厂将在生命周期范围内返回相同的组件实例。
我已经能够通过编写一些代码来实现这一点,这些代码在生命周期范围内充当“名称注册表”,保留已创建的名称和组件实例的字典。这可行,但我怀疑可能有一种方法可以使用一些 autofac 注册魔法来做到这一点,但我还没有破解它。有任何想法吗?
谢谢!