1

我一直在开发一个界面,为 Sharepoint 2010 上的当前用户添加列表警报。对于高权限用户,我可以从列表和文档中添加和删除警报,但是当我使用低级别用户“访客”时读取站点和列表/文档的权限 我无法添加多个警报或删除它们。一个接一个,我得到一个“拒绝访问”。

如果你愿意,我可以给你看我的代码。TIA。

4

1 回答 1

1

假设您没有被沙盒化,您可以使用委托以提升权限运行吗?例如

string employeeIdToRemove = "1337";
Guid siteGuid = SPContext.Current.Site.ID;

SPSecurity.RunWithElevatedPermissions(delegate
{
   using (SPSite mySite = new SPSite(siteGuid))
   {
      SPListItemCollection listItems = mySite.Lists["SuperSecretList"].Items;
      int itemCount = listItems.Count;

      for (int k=0; k<itemCount; k++)
      {
         SPListItem item = listItems[k];

         if (employeeIdToRemove.Equals(item["Employee"].ToString()))
         {
             listItems.Delete(k);
         }
      }
   }
});
于 2012-07-06T18:20:20.327 回答