【发布时间】:2011-10-06 18:58:50
【问题描述】:
我在一个 Asp.net / VB.net 网站上工作,并且来自 C# / WPF 背景,这对我来说还是有点新鲜。
我已经像这样声明了一个 DataTable:
Public notificationList As DataTable
然后我使用 Page_Load 事件处理程序来填充它并将其绑定到我页面上的控件,一切正常
notificationList = dbGetNotificationsList(1)
rptNotify.DataSource = notificationList
rptNotify.DataBind()
但是,在另一种方法中,我需要能够访问此 DataTable,但每当我这样做时,它总是显示为空。我是否需要将此值存储在会话等其他地方?
谢谢
【问题讨论】:
-
您不应该将 DataTable 存储在 Session 中,因为每个用户都将拥有自己的实例,如果用户数量增加,这不是很可扩展。此外,自上次回发以来数据可能已更改,但您仍持有旧数据。因此,为什么不在您需要的每个回发上加载 DataTable?
-
此处的数据包含用户列表和一个值,以指示是否应选中该用户名旁边的复选框。我想在复选框上使用 2 方式绑定将所有选中的值存储在此 DataTable 中,然后基本上将 DT 转换为 XML 并将其传递给存储过程以更新我的数据库。