为了账号安全,请及时绑定邮箱和手机立即绑定

将 lightInject 转换为 .netcore DI

将 lightInject 转换为 .netcore DI

C#
喵喵时光机 2023-08-20 10:22:07
我正在将一些 lightInject 代码转换为 .netcore DI在.netcore DI中,我们有AddSingleton和AddTransient函数来注册服务。在lightInject中,我有RegisterMethod。所以我只想知道 Register 方法在我们调用时是否仅注册单个实例或多个实例。
查看完整描述

1 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

基于文档LightInject 中的默认行为是将所有对象视为瞬态,除非另有指定。因此,在 .Net Core 中,您需要将服务注册为瞬态服务。

关于生命周期的一些知识:

瞬态 瞬态 生命周期服务 (AddTransient) 在每次从服务容器请求时创建。此生命周期最适合轻量级、无状态服务。

作用域 生命周期服务 (AddScoped) 针对每个客户端请求(连接)创建一次。

Singleton Singleton 生命周期服务 (AddSingleton) 在第一次请求时创建(或者当 Startup.ConfigureServices 运行并且通过服务注册指定实例时)。每个后续请求都使用相同的实例。


查看完整回答
反对 回复 2023-08-20
  • 1 回答
  • 0 关注
  • 82 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信