Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sharepoint事件接收器事件未触发_Sharepoint_Sharepoint 2007 - Fatal编程技术网

sharepoint事件接收器事件未触发

sharepoint事件接收器事件未触发,sharepoint,sharepoint-2007,Sharepoint,Sharepoint 2007,我在文档库中添加了一个工作流(使用自定义内容类型),现在我的内容类型事件接收器函数itemcheckingin不会启动。仔细检查了我的xml文件,它被正确引用,其他事件(ItemUpdate、itemadding)正在触发。有什么想法吗?您是否尝试过使用类似SPList.EventReceivers的东西,以编程方式下拉事件接收者列表,并查看是否将正确的事件绑定到您的接收者?有时XML文件不能准确地显示数据库中包含的内容 -Shaun您的列表项是否确实属于已注册事件处理程序的内容类型?听起来您可

我在文档库中添加了一个工作流(使用自定义内容类型),现在我的内容类型事件接收器函数itemcheckingin不会启动。仔细检查了我的xml文件,它被正确引用,其他事件(ItemUpdate、itemadding)正在触发。有什么想法吗?

您是否尝试过使用类似SPList.EventReceivers的东西,以编程方式下拉事件接收者列表,并查看是否将正确的事件绑定到您的接收者?有时XML文件不能准确地显示数据库中包含的内容


-Shaun

您的列表项是否确实属于已注册事件处理程序的内容类型?听起来您可能已经创建了包含内容类型的工作流的新项,而该内容类型没有相关事件的处理程序。我想我会把你的帖子理解为你现在有两种内容类型——一种是工作流,另一种是事件处理程序

我支持@SCMcDonnell的建议,直接去马的嘴,看看你的列表项注册了哪些事件接收者及其内容类型


编辑:哦,我想我一开始没有注意到你说其他活动正在成功进行。这使得我的答案不太可能。尽管如此,我还是建议您专门为有问题的列表项检索事件接收者。

列表上是否有强制签出

如果是这样,那么签入将启动,并且项目也将更新。请参阅本文


那么,这个问题的实际解决方案是什么呢。我想只是检查SPList.EventReceivers并没有解决问题。
if (properties.AfterProperties["vti_sourcecontrolcheckedoutby"] == null && properties.BeforeProperties["vti_sourcecontrolcheckedoutby"] != null)
        {
            //This is when the update event is triggered by check-in.
        }
        else
        {
            //This is triggered by events other than check-in action.
        }