Autofac中的参数化抽象工厂

时间:2012-05-10 15:19:47

标签: .net dependency-injection factory autofac

我希望能够在Autofac中注册具有以下属性的工厂组件:

  1. 工厂必须接受一个参数(在本例中为字符串),并返回与该字符串特别相关的组件实例
  2. 组件的生命周期必须为InstancePerLifetimeScope
  3. #2的含义是第二次使用特定参数值调用工厂将在生命周期范围内返回相同的组件实例。
  4. 我已经能够通过在生命周期范围内编写一些充当“名称注册表”的代码来实现这一点,并保留已创建的名称和组件实例的字典。这是有效的,但我怀疑可能有一种方法可以使用一些autofac注册魔术,但我还没有破解它。有什么想法吗?

    谢谢!

1 个答案:

答案 0 :(得分:3)

听起来你想要Autofac Named and Keyed Services