Sharepoint 暂停ItemAdded事件,直到所有附件都添加到该事件
我有一个添加了多个附件的列表项。一旦添加,我的Sharepoint 暂停ItemAdded事件,直到所有附件都添加到该事件,sharepoint,sharepoint-2013,Sharepoint,Sharepoint 2013,我有一个添加了多个附件的列表项。一旦添加,我的itemsadded事件即被触发 但是,如果我尝试访问属性.ListItem.Attachments属性,它有时会给我0或比原始附加附件少的数字 如果我将线程休眠几秒钟,我将在属性.ListItem.attachments属性中获取剩余的附件。因此,似乎在将所有附件添加到列表项之前调用了itemsadded事件 有没有办法暂停ItemAttachmentAdded事件,直到我的所有附件都添加到列表项中?使用该事件。我最后使用了ItemAttachme
itemsadded
事件即被触发
但是,如果我尝试访问属性.ListItem.Attachments
属性,它有时会给我0或比原始附加附件少的数字
如果我将线程休眠几秒钟,我将在属性.ListItem.attachments
属性中获取剩余的附件。因此,似乎在将所有附件添加到列表项之前调用了itemsadded
事件
有没有办法暂停
ItemAttachmentAdded
事件,直到我的所有附件都添加到列表项中?使用该事件。我最后使用了ItemAttachmentAdded
以及ItemAdded
由于在ItemAttachmentAdded
之前调用了ItemAdded
,我在ItemAdded
中锁定了一个静态对象,并在ItemAdded
事件执行完成后释放它
Lock(object){}
在ItemAttachmentAdded中,我检查该对象上的锁,并仅在获得锁后继续,该锁保证在我的ItemAdded
事件完成后激发我的ItemAttachmentAdded
项
Lock(object){}
在数据库中保存原始项目后,我正在尝试将所有附件复制到数据库中。因此,我需要在
itemsadded
中执行此操作。总之,我最终使用了ItemAttachmentAdded
和ItemAdded