首页 >> 技术文章 >> SharePoint 2007/MOSS2007


MOSS2007给文档库中文件的创建者分派完全控制权限

今天在尝试写一个关于文档库的Eventhandler.

需求来源:用户能在文档库中创建或上传文档,但是不能编辑和删除,现在想让其能编辑和删除自己上传的文档。   

我先创建了一个控制台应用程序来测试,这个程序执行一边,会循环将文档库里的所有文件的创建者赋予完全控制权限,后续的Eventhandler我会继续完成,先请大家帮我测试一下这样写是否可行。注意测试时,创建一个控制台应用程序,拷贝代码,再把站点URL换成实际的URL,文档库名称换成实际的文档库名称。

程序源码:

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SharePoint;

namespace TestListFolder{      
    class Program    {                  
       static void Main(string[] args)   {                           
           SPSecurity.CodeToRunElevated mycode = new SPSecurity.CodeToRunElevated(TestEventhandler);                           
           SPSecurity.RunWithElevatedPrivileges(mycode);                  
       }                  

       public static void TestEventhandler()   {                           
          SPSite site = new SPSite(站点URL);                           
          SPWeb web = site.RootWeb;//打开的是最顶级站点                     
          SPList list = web.Lists[文档库名字];                           

          for (int j = 0; j < list.Items.Count; j++)  {                    
              SPListItem item = list.Items[j];
              SPFile file = list.Items.File;                                    
              SPUser user = file.Author;                                    
              SPRoleAssignment sa = new SPRoleAssignment((SPPrincipal)user);                                    
              SPRoleDefinition role = web.RoleDefinitions["完全控制"];                                    
              sa.RoleDefinitionBindings.Add(role);                                    
              item.BreakRoleInheritance(true);                                    
              item.RoleAssignments.Add(sa);                        
          }
      }        
   }
}
这里是控制台应用程序的全部代码,并注意添加对sharepoint的引用

作者:whalelover


声明:欢迎各大网站转载本站文章,还请保留一条能直接指向本站的超级链接,谢谢!

时间:2008-6-27 9:18:12,点击:0打印】【关闭

上一篇:删除绑定到List中的Eventhandler
下一篇:MOSS2007开发对象描述

OfficeBa论坛】:阅读本文时遇到了什么问题,可以到论坛进行交流!Excel专家邮件:342327115@qq.com(大家在Excel使用中遇到什么问题,可以咨询此邮箱)。

【声明】:以上文章或资料除注明为Office吧自创或编辑整理外,均为各方收集或网友推荐所得。其中摘录的内容以共享、研究为目的,不存在任何商业考虑。如有任何异议,请与本站联系,本站确认后将立即撤下。谢谢您的支持与理解!


相关评论

我要评论

查看所有评论内容

评论内容