指间(蒋建华)--天行健,君子当自强不息

        专注于微软产品及.Net技术的blog
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

恢复列表条目自定义权限为继承权限

Posted on 2009-03-11 00:09  蒋建华  阅读(599)  评论(0编辑  收藏  举报

      修改自定义权限为继承权限
          public void ReCoverInheritRights(string weburl, string listurl, int itemid)
      {
          spweb = spsite.OpenWeb(weburl);
          spweb.AllowUnsafeUpdates = true;

          if (weburl != null && listurl == null && itemid == 0)
          {
              //不做处理
          }
          else if (weburl != null && listurl != null && itemid == 0)
          {
              list = spweb.GetList(listurl);
              if (list.HasUniqueRoleAssignments)
              {

                    //列表没有继承权限,则恢复
                  list.RoleAssignments.Parent.ResetRoleInheritance();
              }
          }
          else if (weburl != null && listurl != null && itemid > 0)
          {
              list = spweb.GetList(listurl);
              SPListItem item = list.GetItemById(itemid);

              if (item.HasUniqueRoleAssignments)
              {

               //列表条目如果没有继承权限,则恢复
                  item.RoleAssignments.Parent.ResetRoleInheritance();
              }
          }

      }