我有一個啓用了內容審批的SharePoint列表。業務要求是,一旦新列表項目被批准,即使任何用戶進一步更新,它仍應保持批准。SharePoint - 檢查事件接收器中的內容審批更改狀態
我的第一個想法是處理ItemUpdating方法,如果相應的before屬性被Approved,那麼將after屬性設置爲Approved。然而,這不起作用。
在ItemUpdating方法中,「審批狀態」列不顯示在properties.BeforeProperties或properties.AfterProperties中。 properties.ListItem [「審批狀態」]和properties.ListItem.ModerationInformation.Status都顯示「before」值。在ItemUpdated方法中,情況是相同的,除了顯示的值是「之後」值。
是否有任何一種方法來識別前後方法?我可以通過創建一個新的隱藏列來解決這個問題,當項目被批准但是看起來並不好時,我會設置一個新的隱藏列。
我應該從工作流的角度來看待這個嗎?
不幸的是,「審批狀態」/「_ ModerationStatus沒有出現在BeforeProperties或AfterProperties集合中 – Chloraphil 2009-10-13 19:21:35
_ModerationStatus * does *出現在AfterProperties集合中(當它被更改時,它的couse),不知道我以前錯過了它。 – Chloraphil 2009-10-22 16:54:10