easyui + jquery 开发实时看板项目总结

1 如果easyui 只是负责前台页面的展示,后台URL : webapi , 这样的方式前台一定不能处理数据源,否则速度非常的慢。
如: 前台只是展示后台url 的部分数据,一开始我用js 即 :easyui loadfilter 过滤数据。结果:慢
优化后: 我过滤数据源放到ashx 中,用c# lambda 过滤,前台只是用来加载数据
2 看板需求 : 数据源要实时刷新,即需要一直调用webservice ,刷新数据源
实现:
while(true)
{
CommonData.cData = ReadWebService();
Thread.sleep(500);
}
3 防止多开线程:
if (CommonData.tThread == null)
{
ThreadStart threadStart = new ThreadStart(ReadWebService);
CommonData.tThread = new Thread(threadStart);
CommonData.tThread.Start();
}
break;
4 将过滤的参数存储起来
CommonData.palletName = paramValue;
5 防止刷新时过滤的参数变化,导致过滤后的结果集为错乱
{
lbl: string tmpValue = CommonData.palletName;
DataTable dtData = null;
if (CommonData.CData != null)
{
dtData = CommonData.CData.Copy();
}
if (dtData != null && dtData.Rows.Count > 0 && String.IsNullOrEmpty(tmpValue) == false && tmpValue.Trim().Length > 0)
{
DataTable areaCheckData = areaCheckInfo(tmpValue, dtData);
rst = List2json.DataTableToJson(“areaData”, areaCheckData);
if (tmpValue.Equals(CommonData.palletName) == false)
{
Thread.Sleep(200);
goto lbl;
}
context.Response.Write(rst);
}
}
break;

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐