Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mengakses HttpContext dalam ASP.NET Core?
Dalam Teras ASP.NET, HttpContext.Current telah ditamatkan. Artikel ini meneroka pendekatan alternatif untuk mengakses konteks HTTP semasa.
1. HttpContext Property
Anda boleh mengakses konteks HTTP semasa melalui sifat HttpContext pengawal:
public class HomeController : Controller { public IActionResult Index() { MyMethod(HttpContext); return View(); } private void MyMethod(Microsoft.AspNetCore.Http.HttpContext context) { // Use the HTTP context here } }
2. Parameter HttpContext dalam Middleware
Dalam perisian tengah Teras ASP.NET tersuai, konteks HTTP semasa disuntik secara automatik sebagai parameter kepada kaedah Invoke:
public async Task InvokeAsync(HttpContext context) { // Use the HTTP context here }
3. Aksesor Konteks HTTP
Untuk kelas yang tidak diuruskan oleh suntikan kebergantungan Teras ASP.NET, perkhidmatan pembantu IHttpContextAccessor boleh digunakan:
public class MyService { private readonly IHttpContextAccessor _httpContextAccessor; public MyService(IHttpContextAccessor httpContextAccessor) { _httpContextAccessor = httpContextAccessor; } public void UseHttpContext() { var context = _httpContextAccessor.HttpContext; // Use the HTTP context here } }
Jangan lupa untuk mendaftar HttpContextAccessor dalam ConfigureServices :
public void ConfigureServices(IServiceCollection services) { services.AddHttpContextAccessor(); // ... }
Atas ialah kandungan terperinci Bagaimana untuk Mengakses HttpContext dalam ASP.NET Core?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!