【发布时间】:2019-11-02 05:07:54
【问题描述】:
如何设置ServiceCollection中注册的服务在构建后的属性。我不能将值传递给构造函数,因为它会导致循环依赖。 想要的行为:
public class ServiceA : IServiceA
{
public ServiceA(IServiceB serviceB)
{
ServiceB = serviceB;
}
IServiceB ServiceB {get; set;}
}
public class ServiceB : IServiceB
{
ServiceA {get; set;}
}
services.AddSingleton<IServiceA, ServiceA>();
services.AddSingleton<IServiceB, ServiceB>();
//I need something like this
services.Inject<IServiceB>((serviceB, serviceProvider) =>
{
serviceB.ServiceA = serviceProvider.GetService<IServiceA>();
});
【问题讨论】:
标签: asp.net-core .net-core inversion-of-control ioc-container service-provider