Это веб-приложение ASP.NET 2010, написанное на vb.Я использую несколько переменных Session.Я хочу передать их всем центральному классу и позволить классу управлять ими.Однако у меня возникли некоторые проблемы.
Вот код на странице вызова:
Dim arrGoodSessions() As String ={"nameofsession1", "nameofsession2", "nameofsession3"}
Utilities.ManageSessionVariables(arrGoodSessions)
Он вызывает статический класс Utilties.Я установил ссылку на System.Web.Вот код в классе:
Imports System.Web
Imports System.Web.SessionState
Imports System.Web.SessionState.HttpSessionState
Imports System.Web.HttpContext
Public Class Utilities : Implements IRequiresSessionState
Public Shared Sub ManageSessionVariables(ByVal arrGoodSessions As String())
Dim alItemsToBeRemoved As New ArrayList
For Each Item In Session.Contents
If arrGoodSessions.Contains(Item.ToString) = False Then
alItemsToBeRemoved.Add(Item.ToString)
End If
Next
For Each i As String In alItemsToBeRemoved
Session.Contents.Remove(i)
Next
End Sub
End Class
Это попытка просто прочитать некоторые имена переменных сеанса, а затем циклически перебрать все переменные сеанса и удалить все, что я не перечислил.Это работает, когда все трески на странице.Но когда я перемещаю это в класс, Session.Contents не перерисовывается.