我知道如何在c#中删除会话.

Session.Remove("SessionName");

怎么可能在c#中删除所有以其名称包含YYY的会话? 例如

YYY_1
YYY_2 .....

推荐答案

是的,您可以使用以下方法删除其中包含YYY的所有sessions:

List<string> keysToRemove = new List<string>();

foreach (var key in Session.Keys)
{
    if (key is string && key.ToString().Contains("YYY"))
    {
        keysToRemove.Add(key.ToString());
    }
}

foreach (var key in keysToRemove)
{
    Session.Remove(key);
}
  • 在这里,我们使用Session.Keys迭代所有会话密钥.
  • 在这里,我们判断每个键是否是一个字符串并且包含指定的子字符串("YYY").
  • 如果某个键与条件匹配,则将其添加到列表(KeysToRemove).
  • 最后,我们迭代要删除的键列表,并 for each 键调用Session.Remove.

参考文献:https://dotnetfiddle.net/SUGUqE

Csharp相关问答推荐

使用其可能实现的基类和接口的属性的方法

在依赖性注入和继承之间进行 Select

在Linq中调用需要limit和offset的方法''''

如何在C#中删除一个特殊字符,如"使用Regex"

迭代C#List并在数据库中 for each 元素执行SELECT语句—更有效的方式?

实现List T,为什么LINQ之后它不会返回MyList?<>(无法强制转换WhereListIterator `1类型的对象)'

try 在Blazor项目中生成html

Azure Redis缓存与Entra ID身份验证

如何使用新的Microsoft.IdentityModel.JsonWebToken创建JwtSecurityToken?

无法通过绑定禁用条目

SortedSet.Remove()不会删除SortedSet.Min返回的元素

什么时候接受(等待)信号灯?尽可能的本地化?

如何在C#中创建VS代码中的控制台应用程序时自动生成Main方法

如何在不复制或使用输出的情况下定义项目依赖

如何允许数组接受多个类型?

C#LINQ延迟执行和嵌套方法

最小API定义的Swagger标头参数

通过mini kube中的远程调试Pod与从emoteProcessPickerScript中解析错误输出的代码错误进行比较

使用ITfoxtec.Identity.Saml2解析相同键多值SAML 2声明

从具有泛型类型约束的类继承-Blazor