首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

做list更新时,只需要遍历那些在时间上比在上一次做数据同步操作的时间晚的那些数据。Timer job,该怎么解决

2012-03-20 
做list更新时,只需要遍历那些在时间上比在上一次做数据同步操作的时间晚的那些数据。Timer job有一个sharep

做list更新时,只需要遍历那些在时间上比在上一次做数据同步操作的时间晚的那些数据。Timer job
有一个sharepoint list.取名为list1. list1 中目前有数据(items)千条左右, list1 上有个button 是用来做数据同步和更新的, 是把list2 上的数据同步到list1上来的。如果list2 上有新增或修改的数据,通过button 点击就可以把这些在list1上不存在的list2 上的数据添加或者更新到list1 上来。 ---(这部分功能已经实现)

问题1: 每当我在list1上做同步数据的操作(点击button)时,程序都会遍历list1 上所有的items,因为数据量庞大,导致性能和速度不高。 我希望能做一个时间标记。 比如:我做数据同步操作时,只需要遍历那些 在时间上 比在上一次做数据同步操作的时间晚的那些数据,这样一来,在做更新的过程中性能就要好很多。

问题2: 如果要设置一个定时器 (Timer job)实现数据的自动更新呢, 这个要如何去实现呢?


希望各位高手们多多指教,小弟在此感谢!(尽量详细解答,有代码示例更好)

[解决办法]
我这有一个思路,希望对你有帮助。

其实我的想法也很简单:
1. 在list2中添加一列,名为status。来记载该条记录是不是新政的,如果是,给个值(例如status是Boolean类型的,那么如果是新增的就给赋值1。)
2. 写一个Timejob,来caml出来其中状态为1的所有Item。然后把它们添加到list1种,并且把list2
中的已经添加到list1种的所有数据状态修改为0。

思路是这样。不知道是否可以帮到你。如果有其他疑问,请继续!
[解决办法]
转一个看到的

引用最近在学习MOSS开发,在学习过程中想不断总结一些资料发布到WINOS来和大家一起分享。 
包括工作中遇到的开 ...
[size=2]moss.net 发表于 2008-6-21 09:42 [img]http://bbs.winos.cn/images/common/back.gif[/img][/size]

[解决办法]
探讨
引用:
我这有一个思路,希望对你有帮助。

其实我的想法也很简单:
1. 在list2中添加一列,名为status。来记载该条记录是不是新政的,如果是,给个值(例如status是Boolean类型的,那么如果是新增的就给赋值1。)
2. 写一个Timejob,来caml出来其中状态为1的所有Item。然后把它们添加到list1种,并且把lis……

[解决办法]
探讨
hi, 5楼朋友:我看了你这个思路: “还有另外一个思路就是通过时间还进行判断 在查询list2中Item 的创建时间 通过caml 查询 就能够得到哪些是新增的了 功能用在time Job 中最适合了 这种方法的缺点就是一定要把每次更新的时间记的准确 还要有固定位置长期存储 ”

对于上面的思路我的理解是:在list2中通过查询,那些在创建时间上大于 在list1上 上一次做更新的时间,……

[解决办法]
刚才我又看了下你的描述 应该和你说的意思差不多 因为不清楚你list1中的记录是否有别的来源 所以有点区别
[解决办法]
探讨
引用:
刚才我又看了下你的描述 应该和你说的意思差不多 因为不清楚你list1中的记录是否有别的来源 所以有点区别

list1 中本身也存在一些数据,在lsit1上通过button 做同步,就是把list2上那些与list1上本身存在的数据不同的数据添加到list1上来, (这个虽已实现)。 我的问题是:
 比如,list1 在9月20日通过butto……

热点排行