Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mengakses HttpContext dalam ASP.NET Core?

Bagaimana untuk Mengakses HttpContext dalam ASP.NET Core?

Linda Hamilton
Lepaskan: 2025-01-19 15:02:09
asal
762 orang telah melayarinya

How to Access HttpContext in ASP.NET Core?

Cara Mendapatkan HttpContext.Current dalam Teras ASP.NET

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
    }
}
Salin selepas log masuk

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
}
Salin selepas log masuk

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
    }
}
Salin selepas log masuk

Jangan lupa untuk mendaftar HttpContextAccessor dalam ConfigureServices :

public void ConfigureServices(IServiceCollection services)
{
    services.AddHttpContextAccessor();

    // ...
}
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan