在asp.net中使用StateServer模式时的序列化问题

时间:2013-04-04 22:55:47

标签: asp.net .net vb.net serialization

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

谢谢!

0 个答案:

没有答案