我最近使用当前配置运行了一个网络核心项目:
services.AddTransient<Service1>();
services.AddSingleton<Service1>();
其中 Service1
是一个类。这样做的目的可能是什么?或者这只是一个错误?
有什么办法可以选择动态使用服务的新实例还是单例?
最佳答案
最后一个注册“获胜”,因此您的 Service1
类型将在给定您当前代码的情况下注册为单例。
如果您更改调用顺序,它将被注册为 transient 依赖项。但不要两者都做。为每种类型选择一个生命周期。
关于c# - 多次注册同一服务的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60340901/