将会话中的对象(控件)从一个页面传递到另一个页面

时间:2012-03-29 14:40:19

标签: asp.net session session-state session-variables infragistics

我需要将Infragistics ultrawebtree从一个页面传递到另一个页面。我为此使用了Session(“data”),然后我只是从另一个页面访问它。但是当我在第二页中将转换后的会话值分配给Infragistics ultrawebtree控件时,它不会构建树结构而且它是不可见的。我是否正在使用这种方法,是否有任何其他方法可以从一个页面传递整个树结构并将其显示到另一个页面。任何帮助表示赞赏

2 个答案:

答案 0 :(得分:2)

如果有的话,我会将数据源存储在会话而不是树中。在会话中存储整个控件会产生大量不必要的开销,并限制下一页上每个实现的选项。

编辑:您应该能够将树结构导出为XML格式,并将XML存储在会话中。根据文档,应该有WriteXmlDoc()WriteXmlString()个函数。您还可以使用ReadXmlDoc()ReadXmlString()函数在下一页重新填充树。

这是UltraWebTree的documentation。您将在“公共方法”部分下看到这些方法:

答案 1 :(得分:0)

只有数据应存储在会话中。在会话中存储控件可能会导致问题,因为控件将在页面卸载期间处理,并且在处理之后不应访问控件,这是从会话访问控件时会发生的情况。有关详细信息,请参阅Why Controls Shouldn't be Stored in Session