Asp.net-Mvc

如何在視圖中獲取會話值 asp.net core

  • March 27, 2020

我正在嘗試進行這樣的會話

@HttpContext.Session.GetString("some");

但我越來越

非靜態欄位需要對象引用……

有想法的人嗎?

您必須將實現注入IHttpContextAccessor視圖並使用它。

@using Microsoft.AspNetCore.Http
@inject Microsoft.AspNetCore.Http.IHttpContextAccessor HttpContextAccessor

現在您可以訪問該HttpContext屬性,然後Session

<p>
   @HttpContextAccessor.HttpContext.Session.GetInt32("MySessionKey")
</p>

假設您已完成所有必要的設置以在startup課堂上啟用會話。

在你的ConfigureServices方法中,

services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();

IApplicationBuilder.UseSession方法中的方法呼叫Configure

app.UseSession();

引用自:https://stackoverflow.com/questions/43698878