UnityContainer:什么是默认的 lifetimemanager

UnityContainer: what is default lifetimemanager

我使用 Web API 2,这是我的统一容器的配置(我配置了我的 rabbitmq 依赖项):

container.RegisterInstance(new ConnectionFactory {
    Uri = AppSettings.RmqConnectionString
});

container.RegisterType<IConnection, AutorecoveringConnection>(
    new InjectionConstructor(typeof(ConnectionFactory), "tm.resource-server.api"),
    new InjectionMethod("Init")
);

现在我想不通,这个依赖项的默认生命周期是多少?

它们将在什么时间创建或解决已经存在的实例。

我应该使用自己的 lifetimemanager 还是使用现有的(例如 PerThreadLifetimeManager)?

  1. RegisterInstance 的默认生命周期是 ContainerControlledLifetimeManager
  2. RegisterType 的默认生命周期是 TransientLifetimeManager