- 瞬时(Transient):无状态的服务,比如 DAL 层中的 Repository
- 作用域(Scoped):请求范围内共享状态的服务,比如 BLL 层中的 Service、Controller
- 单例(Singleton):在整个应用程序中共享状态的服务,比如配置类、缓存类
- 线程安全,使用线程安全的数据结构或者在服务中使用锁机制
- 内存泄漏,使用 IDisposable 释放资源
如果不确定服务的状态和使用场景,可以选择 Scoped 作为默认的生命周期。
如果不确定服务的状态和使用场景,可以选择 Scoped 作为默认的生命周期。