我试图找到一个简单的例子,如何为列表项目Z提供一个特定的Sharepoint组X,一个权限级别Y -但是找不到示例代码。
为该项分配特定的用户权限(在本例中为“Reader”),我可以找到的最短代码如下:
SPRoleDefinition spRole = spWeb.RoleDefinitions["Reader"];
SPRoleAssignment roleAssignment= new SPRoleAssignment("//myDomain/myUser",
"none@example.org",
"Name", "Notes");
roleAssignment.RoleDefinitionBindings.Add(spRole);
SPListItem listItem = spWeb.GetListItem("http://<URL to item somewhere on the Site>");
listItem.BreakRoleInheritance(true);
listItem.RoleAssegnments.Add(roleAssignment);
listItem.Update();我知道SPRoleAssignment.Add也可以使用SPPrincipal,而这反过来又是是一群 --我只是不知道如何编写它。
请给我一些例子代码,如何添加一个现有的Sharepoint组。( "MyGroup")具有“读取器”权限级别的项目。
发布于 2011-02-08 14:44:36
实际上,这相当容易--而不是SPRoleAssignment("user","name"...),我只需要在角色分配中添加一个SPGroup就可以了!完整代码如下:
//note: using SiteGroups is "safer",
//because also groups which don't yet have any permissions are included
SPGroup spGroup = spWeb.SiteGroups["MyGroup"];
SPRoleDefinition spRole = spWeb.RoleDefinitions["Read"];
SPRoleAssignment roleAssignment= new SPRoleAssignment(spGroup);
roleAssignment.RoleDefinitionBindings.Add(spRole);
SPListItem listItem = spWeb.GetListItem("http://<URL to item somewhere on the Site>");
listItem.BreakRoleInheritance(true);
listItem.RoleAssignments.Add(roleAssignment);
listItem.Update();https://stackoverflow.com/questions/4934168
复制相似问题