0

如果我的会话模式设置为“StateServer”,则会出现序列化错误,因为我将控件列表存储在会话中,并将它们添加到 aspx 占位符控件中。这是我认为有问题的代码:

Protected Sub AddCtrl(ByVal ctrl As Control)
   Dim l As List(Of Control)
   If Session("Ctrls") Is Nothing Then
      l = New List(Of Control)
   Else
      l = DirectCast(Session("Ctrls", List(Of Control))
   End If
End Sub

稍后在代码中,我遍历 Ctrls 会话对象,并将每个控件添加到 HTML 中的占位符。

我能做些什么来解决这个问题?我尝试创建一个从列表继承的自定义列表,并使其可序列化并改用自定义列表,但这并没有做到:

<Serializable()> _
Public Class MyList 
    Inherits List(Of Control)

我尝试改用 ViewState,但也没有用。寻求建议...

谢谢!

4

0 回答 0