在ASP.NET框架中進行依賴注入(Dependency Injection,簡稱DI)主要涉及到以下幾個步驟:
Install-Package Microsoft.Extensions.DependencyInjection
IMyService
的服務接口和一個名為MyServiceImpl
的服務實現類。public interface IMyService
{
string GetData();
}
public class MyServiceImpl : IMyService
{
public string GetData()
{
return "Hello, Dependency Injection!";
}
}
Startup.cs
文件中的ConfigureServices
方法中進行操作。首先,你需要獲取IServiceCollection
實例,然后使用AddTransient
方法注冊服務。public void ConfigureServices(IServiceCollection services)
{
services.AddTransient<IMyService, MyServiceImpl>();
}
AddTransient
方法表示每次請求時都會創建一個新的服務實例。你還可以使用其他方法,如AddSingleton
(單例)和AddScoped
(作用域),來控制服務的生命周期。
using Microsoft.AspNetCore.Mvc;
指令。然后,通過構造函數注入的方式將服務傳遞給控制器。[ApiController]
[Route("api/[controller]")]
public class MyController : ControllerBase
{
private readonly IMyService _myService;
public MyController(IMyService myService)
{
_myService = myService;
}
[HttpGet]
public IActionResult Get()
{
string data = _myService.GetData();
return Ok(data);
}
}
通過以上步驟,你已經成功地在ASP.NET框架中實現了依賴注入?,F在,當你的應用程序運行時,ASP.NET會自動處理服務的創建和注入,你無需手動創建服務實例。