首页 > 解决方案 > CSOM 为 SharePoint 列表上的组授予编辑权限

问题描述

我正在 CSOM 中为 SharePoint Online 创建一个新列表,但我对此很陌生,所以我一直在更改权限。有3个用户组,所有者,访问者和成员。我想授予访问者对此列表的编辑权。

我已经设法打破继承并使用以下代码获取所有访问者,但我坚持如何为他们提供新权限

newList.BreakRoleInheritance(false, true);
var visitors = ctx.Web.SiteGroups;
ctx.Load(visitors, groupitems => groupitems.Include(groupitem => groupitem.Title,
    groupitem => groupitem.LoginName).Where(groupitem=> groupitem.Title == visitorsGroupName));

标签: sharepointpermissionssharepoint-onlinecsom

解决方案


你可以试试这个

var EditRole= new RoleDefinitionBindingCollection(ctx);
EditRole.Add(ctx.Web.RoleDefinitions.GetByType(RoleType.Editor));
Microsoft.SharePoint.Client.Group visitors= ctx.Web.SiteGroups.GetByName("visitors");
ctx.Load(visitors);
newList.RoleAssignments.Add(visitors, EditRole);
ctx.ExecuteQuery()

推荐阅读