Sharepoint 2007:打破项目中的角色继承“消失”该项目

时间:2014-05-20 09:21:35

标签: c# sharepoint

我们的sharepoint 2007网站上有一个错误。 我们有一个ItemCheckedIn的事件接收器用于文档库。这是代码:

SPSecurity.RunWithElevatedPrivileges(delegate()
{
    using (SPSite site = new SPSite(itemUrl))
    {
         using(SPWeb web = site.OpenWeb()
         {
             SPListItem item = web.GetListItem(itemUrl);
             item.BreakRoleInheritance(true);
         }
    }
});

此事件中的此代码导致当用户签入某个项目时,它会消失" AllItems.aspx页面中的项目,但是当用户刷新页面时,文件再次使用库中复制的权限。

任何想法为什么会发生?

1 个答案:

答案 0 :(得分:0)

不确定但是......

在de BreakRoleInheritance语法之后你可能需要item.Update()吗?

{
web.AllowUnsafeUpdates = true;
SPListItem item = web.GetListItem(itemUrl);
item.BreakRoleInheritance(true);
item.Update();
}