.net core .Net核心依赖项注入手动处置使用implementationFactory函数创建的对象

.net core .Net核心依赖项注入手动处置使用implementationFactory函数创建的对象,.net-core,dependency-injection,.net Core,Dependency Injection,在使用implementationFactory创建对象之后,是否有一种方法来处理它们?像这样: services.AddTransient(x => { var objectA = new ObjectA(); //objectA needs to be disposed after the use of objectB return objectA.ObjectB; }); 我认为这是唯一正确的方法,对吗 services.AddTransient

在使用implementationFactory创建对象之后,是否有一种方法来处理它们?像这样:

   services.AddTransient(x => {
    var objectA = new ObjectA(); //objectA needs to be disposed after the use of objectB
    
    return objectA.ObjectB;
  });

我认为这是唯一正确的方法,对吗

services.AddTransient(x => new ObjectA());

services.AddTransient(x => {
var objectA = x.GetService<ObjectA>();

return objectA.ObjectB;
});
services.AddTransient(x=>newObjectA());
services.AddTransient(x=>{
var objectA=x.GetService();
返回objectA.ObjectB;
});

正确。我还没来得及回答你就明白了。很好。注意一次性临时注册。从根作用域/容器解析时,它们可能会导致内存泄漏。只解决IServiceScope中的一次性瞬变,或者将它们注入到单例中。@Steven你能详细说明一下吗?我写了很多关于这个主题的文章。