如果我的会话模式设置为“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,但也没有这样做。寻求建议......
谢谢!