1、注册服务
public void ConfigureServices(IServiceCollection services) { // 注册服务 services.AddSingleton<IMyService, MyService>(); // 单例服务 services.AddScoped<IOtherService, OtherService>(); // 每次请求创建一个新实例 services.AddTransient<IRepository, Repository>(); // 每次请求创建一个新实例 }
AddSingleton:将服务注册为单例模式,整个应用程序生命周期内只创建一个实例。
AddScoped:将服务注册为作用域模式,每个请求创建一个实例,请求结束时销毁。
AddTransient:将服务注册为瞬态模式,每次请求都创建一个新的实例。
2、使用依赖注入
public class MyController : ControllerBase { private readonly IMyService _myService; private readonly IOtherService _otherService; public MyController(IMyService myService, IOtherService otherService) { _myService = myService; _otherService = otherService; } // 使用 _myService 和 _otherService 进行操作 }