Discuz!NT控件剖析之左侧导航控件
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-04-11
aggregationConfigTimer.Start(); 13 } 14 15 private static void Timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) 16 { 17 if (IsFileHadRewrite()) 18 { 19 //重设文件修改时间,以便下次文件更新时进行逻辑判断 20 ReSetFileChangeTime(); 21 22 //重新从数据文件中读取数据 23 AggregationData.ReadAggregationConfig(); 24 25 //调用上面的相关函数 26 NotifyClearDataBind(); 27 } 28 } 这样当后台修改任何聚合数据页面 (aggregation.config) 的数据后,都会使aggregation.config文件被更 新(文件修改时间会发生变化)。 这时前台页面调用数据时就会根据这个判断来决定是从数据文件或数据库中重新加载数据还是使用已 初始化的数据了。 这里为了说明只举了一个例子,其实这样的程序逻辑在这个项目文件中有不少. 1 private DataTable topNComment; 2 public DataTable GetSpaceTopCommentsFromFile() 3 { 4 //注意此处的判断 5 if (topNComment != null) 6 { 7 return topNComment; 8 } 9 10 //从文件中取 11 topNComment = aggregationDS.Tables["topncommentspace"]; 12 13 14 return topNComment; 15 } 为什么使用这样的方式呢。其实是出现进程并发时效率的考虑,因为之前的程序逻辑是当HTTP请求到来 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于Discuz!NT控件剖析之左侧导航控件的所有评论