如何在视图中获取会话值ASP.NET核心视图、核心、如何在、ASP

2023-09-04 01:44:01 作者:清酒暖风

我正在尝试像这样获取会话

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

但我得到了

Beyond Compare如何管理会话

*

非静态字段需要对象引用......

*

有人有想法吗?

推荐答案

您必须将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>();

Configure方法中的IApplicationBuilder.UseSession方法调用。

app.UseSession();
 
精彩推荐
图片推荐