SharePoint - 检查事件接收器中的内容审批更改状态

时间:2009-10-13 18:35:53

标签: sharepoint-2007

我有一个启用了内容审批的SharePoint列表。业务要求是,一旦新的列表项被批准,尽管任何用户进一步更新,它仍应保持批准。

我的第一个想法是处理ItemUpdating方法,如果相应的before属性是Approved,则将after属性设置为Approved。但这不起作用。

在ItemUpdating方法中,“审批状态”列未显示在properties.BeforeProperties或properties.AfterProperties中。 properties.ListItem [“Approval Status”]和properties.ListItem.ModerationInformation.Status都显示“before”值。在ItemUpdated方法中,情况是相同的,除了显示的值是“after”值。

在任何一种方法中都有办法识别前后方法吗?我可以通过创建一个新的隐藏列来解决这个问题,我在项目获得批准时设置但这似乎不是最好的。

我是否应该从工作流程的角度来看待这个问题?

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

将字段的内部名称与AfterProperties或BeforeProperties一起使用。 ie properties.AfterProperties [“内部名称”]。

它对我有用

答案 2 :(得分:0)

请参阅AfterProperties部分中的以下属性以获取文档库。

文档库与列表略有不同。 doc库有.AfterProperties [“vti_doclibmodstat”]和.AfterProperties [“vti_doclibmodcomm”]。