- 不要为 IDisposable 实例注册暂时性生存期。 请改用工厂模式。
- 不要在根范围内解析具有暂时性或范围内生存期的 IDisposable 实例。 唯一的例外是应用创建/重新创建并释放 IServiceProvider 的情况,但这不是理想模式。
- 通过 DI 接收 IDisposable 依赖项不要求接收方自行实现 IDisposable。 IDisposable 依赖项的接收方不能对该依赖项调用 Dispose。
- 使用范围控制服务的生存期。 作用域不区分层次,并且在各作用域之间没有特定联系。
有关资源清理的详细信息,请参阅实现 Dispose
方法或实现 DisposeAsync
方法。 另外,请考虑容器捕获的可释放的暂时性服务方案,因为它与资源清理相关