ASP.NET Core清除会话问题

Pla*_*uti 4 asp.net-core-mvc asp.net-core

我有一个应用程序,我在其中保存一些有关会话的信息,稍后当我将其保存到数据库时将其分配给模型。例如,我有User1保存的以下模型:

...
MyModel model = new MyModel();
model.name = mypostedModel.name;
model.type = HttpContext.Session.GetString("UniqueTypeForThisUser");
...
Run Code Online (Sandbox Code Playgroud)

将模型保存在数据库中后,在 post 方法结束时,我使用以下行清除会话:

HttpContext.Session.Clear();
Run Code Online (Sandbox Code Playgroud)

假设同时有一个User2创建一个新模型,并且我在会话中使用User2的唯一键保存了另一个值。与以前一样,在 post 方法结束时,我使用 Clear() 方法清除会话。

此清除会话方法是清除所有用户的会话,还是仅清除一个用户的会话。例如,如果User1首先保存模型并清除所有用户的会话,那么 User2清除(丢失)他的会话变量,并将为模型的“类型”列分配一个空值。

对于文档来说,这对我来说并不清楚。谢谢

Pri*_*kar 6

您可以删除特定的键

 HttpContext.Session.Remove("YourSessionKey");
Run Code Online (Sandbox Code Playgroud)