gpt4 book ai didi

c# - 对 HttpContext.Current.Session 的静态引用是否为所有用户返回相同的 session ?

转载 作者:太空狗 更新时间:2023-10-29 22:55:10 28 4
gpt4 key购买 nike

就同一网络应用程序的多个用户而言,以下代码是否存在问题?我的意思是,我知道一个纯静态字符串将在单个 ASP.NET 应用程序的所有 session 之间共享,但考虑到这明确引用了 Current.Session,即使它看起来是静态的就像它总是引用“当前用户”的 session 实例。

但是发生了一个错误,可以解释为每个人都共享 Mode 的当前值,因此最近的更改会覆盖其他人的模式值。

(作为背景:此字符串位于整个应用程序中使用的 Helpers 类中。我不想对 Session["Mode"] 贯穿整个应用程序,并且不想在从 aspx.cs 页面调用的每个方法中都传递 Session["Mode"]。)

public static string Mode
{
get
{
var value = HttpContext.Current.Session["Mode"];
return (value ?? string.Empty).ToString();
}
set
{
HttpContext.Current.Session["Mode"] = value;
}
}

最佳答案

HttpContext.Current 始终返回当前请求的上下文(如果当前请求)。

由于每个用户将执行不同的请求,因此每个上下文都会不同。

关于c# - 对 HttpContext.Current.Session 的静态引用是否为所有用户返回相同的 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4899432/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com