使用“Windows资源管理器”在两个SharePoint 2007库之间移动文件时出现奇怪的行为

时间:2012-06-06 12:21:14

标签: c# sharepoint-2007

我创建了一个功能,我继承SPItemEventReceiver以向ItemAdded方法添加一些自定义代码。该解决方案按预期工作,但在一个场景中:当我在“Windows资源管理器”中打开两个文档库并将文件从一个库拖到另一个库时,自定义代码仅执行偶尔

为了调查此行为,我尝试了调试,但是当我这样做时,自定义代码每次都会执行

我已经使用此过程来避免properties.ListItem为null:http://social.msdn.microsoft.com/Forums/en/sharepointdevelopment/thread/8712648e-cf09-4f7b-ab13-1c6aacdf588a

您对可能出现的错误有什么想法吗?

2 个答案:

答案 0 :(得分:0)

我不确定导致此问题的原因,但在我在ItemAdded方法中添加以下行后,它可以正常工作:

    System.Threading.Thread.Sleep(200);

答案 1 :(得分:0)

ItemAdded事件是一个异步事件。这意味着之前的操作可能尚未完全完成。它可能总是在调试模式下工作,因为它是一个时序问题。您可以尝试使用itemAdding事件或变通方法,如:this blog

中所述