gpt4 book ai didi

c# - 无法添加具有空角色定义绑定(bind)集合的角色分配

转载 作者:行者123 更新时间:2023-12-02 04:43:29 25 4
gpt4 key购买 nike

我正在尝试向在 SharePoint 2013 中使用 ClientContext 的用户授予权限。我所做的一切与 Microsoft 网站上的完全相同 http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.roledefinitionbindingcollection.add.aspx

但最后,这部分代码总是返回异常“无法添加具有空角色定义绑定(bind)集合的角色分配”:

RoleAssignment oRoleAssignment = w.RoleAssignments.Add(oUser, roleDefBinding);                            
clientContext.ExecuteQuery();

我已经搜索过网络,发现与其他一些用户类似的问题但没有回应。有什么想法吗?

我的代码:

clientContext.Load(w.RoleDefinitions);
clientContext.ExecuteQuery();
var role = w.RoleDefinitions.Where(r => r.Name == roleName);
if (role.Count() > 0)
{
RoleDefinition roleMSP = role.First();
clientContext.Load(w.SiteUsers);
clientContext.ExecuteQuery();
var user = w.SiteUsers.Where(u=> u.LoginName == "c:0+.w|s-1-5-21-3493872076-3631449775-1555872641-1347");
if (user.Count() > 0)
{
// Create a new RoleDefinitionBindingCollection object.
RoleDefinitionBindingCollection roleDefBinding = new RoleDefinitionBindingCollection(clientContext);
roleDefBinding.Add(roleMSP);
User oUser = user.First() as User;

clientContext.Load(w.RoleAssignments);
clientContext.ExecuteQuery();

RoleAssignment oRoleAssignment = w.RoleAssignments.Add(oUser, roleDefBinding);
clientContext.ExecuteQuery();//Here I get an exception
}
}

最佳答案

已解决!删除了以下代码行:

clientContext.Load(w.RoleAssignments);
clientContext.ExecuteQuery();

看起来您不需要在添加您的任务后检索任务列表。

关于c# - 无法添加具有空角色定义绑定(bind)集合的角色分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20323987/

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