ホームページ >バックエンド開発 >C++ >ASP.NET Core で HttpContext にアクセスするにはどうすればよいですか?

ASP.NET Core で HttpContext にアクセスするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-19 15:02:09708ブラウズ

How to Access HttpContext in ASP.NET Core?

ASP.NET Core で HttpContext.Current を取得する方法

ASP.NET Core では、HttpContext.Current は非推奨になりました。この記事では、現在の HTTP コンテキストにアクセスするための別のアプローチについて説明します。

1. HttpContext プロパティ

コントローラーの HttpContext プロパティを通じて現在の HTTP コンテキストにアクセスできます:

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.ミドルウェアの HttpContext パラメーター

カスタム ASP.NET Core ミドルウェアでは、現在の HTTP コンテキストがパラメーターとして Invoke メソッドに自動的に挿入されます:

public async Task InvokeAsync(HttpContext context)
{
    // Use the HTTP context here
}

3。 HTTP コンテキスト アクセサー

ASP.NET Core の依存関係注入によって管理されないクラスの場合は、IHttpContextAccessor ヘルパー サービスを使用できます。

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
    }
}

ConfigureServices で HttpContextAccessor を登録することを忘れないでください。 :

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

    // ...
}

以上がASP.NET Core で HttpContext にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。