0

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

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

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

您对可能是什么问题有任何想法吗?

4

2 回答 2

0

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

于 2012-06-11T07:57:38.517 回答
0

我不确定是什么导致了这个问题,但是在 ItemAdded 方法中添加了以下行之后,它就可以工作了:

    System.Threading.Thread.Sleep(200);
于 2012-06-11T07:31:42.410 回答