我似乎有一个问题——相当出乎意料;所以我想我可能在做一些愚蠢/错误的事情。
我这样注册了两个容器范围的服务:
builder.Register<IServiceInfo>(c => CreateServiceInfo(c)).As<IServiceInfo>();
builder.Register<IServiceInfo>(c => CreateServiceInfoSomeOther(c)).As<IServiceInfo>().Named("someOther");
现在当我尝试解决
container.Resolve<IServiceInfo>()
and container.Resolve<IServiceInfo>("someOther")
我得到了同样的例子。我希望第一次调用返回第一个实例,第二次调用返回第二个实例。为什么会这样?
我希望这里有一些活跃的 Autofac 专家,如果能帮助我快速解决这个问题,我将不胜感激。
谢谢大家!