gpt4 book ai didi

c# - 如何为 SPItem 授予 SPGroup 权限?

转载 作者:太空狗 更新时间:2023-10-29 22:24:26 25 4
gpt4 key购买 nike

我试图找到一个简单的示例,如何为列表项 Z 赋予某个 Sharepoint 组 X、权限级别 Y - 但找不到示例代码。

我能想出的最短的代码如下:

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 ,后者又是 is a group - 我只是不知道怎么写。

请给我一些示例代码,说明如何将具有“读者”权限级别的现有 Sharepoint 组(例如“MyGroup”)添加到我的项目。

最佳答案

实际上这很容易 - 除了 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();

关于c# - 如何为 SPItem 授予 SPGroup 权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4934168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com