请问以上服务的注册有没有问题?
熟悉 .NET 的同学很快就会说:
这当然有问题,
IDbContext
是
Scope
生命周期,
LongTermSerive
因为注册成了
HostedService
所以实际上它是
Singleton
生命周期。
Singleton
不能持有 Scope 生命周期的服务。说的更通用一点的话就是:生命周期长的服务无法依赖生命周期比它的服务。
真的是这样吗???
以上回答只说对了
一半。这时候肯定马上会有同学跳出来说,“这怎么会不对呢?我刚刚都试过了,VS直接报错了”。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。