手把手教你写Ajax驱动的DataGrid控件(三),在上一篇文章,我们实现了将Object类型的数据源转化为DataTable的目的。接下来,我们就要将数据源保留下来,直到确定它们不再使用。
保留数据源很容易,也很好实现,我们这里采用Hashtable来实现数据的缓存。但是,将数据源保留到什么时候呢?怎样才能准确判断数据源不再被使用?我们稍后讨论。
1.1 保留数据源 AjaxGridHelper.cs
using System;
using System.Collections;
namespace Wfyfngu.Web.UI
{
///
/// AjaxGridHelper 的摘要说明。
///
[Serializable]
internal class AjaxGridHelper
{
// 主表
// key: 客户端唯一标识,用于区分用户
// value: 辅表
// --辅表
// key: 控件唯一标识
// value: DataGridSourceInfo对象
private static Hashtable CachedSource = new Hashtable(100);
// 客户列表
private static Hashtable CachedClient = new Hashtable(100);
///
/// 允许的不活动时间(分钟)
/// 如果数据源没有被正常销毁,则在这个时间后调用相应的代码将其销毁
/// 当客户端在这个时间之内和服务器通信则认为其在线
/// 如果客户端在这个时间内没有和服务器通信,则删除他的所有数据
///
private static int TimeOut = 720;
}
}
责编:天羽
推荐广告