我在我的文档库中添加了一个工作流程(带有自定义内容类型),现在我的内容类型事件接收器功能itemcheckingin没有触发。双重检查我的xml文件,它正确引用,其他事件(itemupdating,itemadding)正在触发。有什么想法吗?
答案 0 :(得分:1)
您是否尝试使用类似SPList.EventReceivers的程序下拉一个事件接收器列表,并查看正确的事件是否绑定到您的接收器?有时,XML文件无法准确显示数据库所持有的内容。
-Shaun
答案 1 :(得分:1)
您的列表项肯定是具有已注册事件处理程序的内容类型吗?听起来您可能已经创建了包含工作流的内容类型的新项目,其中该内容类型没有感兴趣事件的处理程序。我想我会解释你的帖子说你现在有两种内容类型 - 一种是工作流程,另一种是事件处理程序。
我的第二个@ SCMcDonnell建议直接进入马的嘴,看看哪些事件接收器已经注册了您的列表项及其内容类型。
编辑:哦,我想我最初错过了你声称其他事件成功解雇的说法。这使我的答案不太可能。不过,我建议您专门检索违规列表项的事件接收器。答案 2 :(得分:0)
列表是否强制结帐?
如果确实如此,那么checkin也会触发和ItemUpdated。请参阅此知识库文章
http://support.microsoft.com/default.aspx/kb/939307
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.
}