我们的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页面中的项目,但是当用户刷新页面时,文件再次使用库中复制的权限。
任何想法为什么会发生?
答案 0 :(得分:0)
不确定但是......
在de BreakRoleInheritance语法之后你可能需要item.Update()
吗?
{
web.AllowUnsafeUpdates = true;
SPListItem item = web.GetListItem(itemUrl);
item.BreakRoleInheritance(true);
item.Update();
}