- Singleton
單例模式,服務在第一次請求時被創建,其后的每次請求都沿用這個已創建的服務。我們不用再自己寫單例了。
- Scoped
作用域模式,服務在每次請求時被創建,整個請求過程中都貫穿使用這個創建的服務。比如Web頁面的一次請求。
- Transient
瞬態模式,服務在每次請求時被創建,它最好被用於輕量級無狀態服務。
人話解釋:
AddSingleton:單個實例,這是壽命最長的,與天同壽。整個應用程序中僅用一個實例。
AddTransient:這個是最短命的,可能是天天晚上加班熬夜,死得很快。此種情況下,服務類的實例是用的時候創建,用完后直接銷毀。
AddScoped:這個比較難理解。它的生命周期在單個請求內,包括客戶端與服務器之間隨后產生的子請求,反正只要請求的會話結束了,就會清理。