我正在尝试将网站权限从一个网站复制到另一个网站。当我尝试从已添加6个用户的网站复制权限时,它工作正常,但随后我运行我的代码以从87个用户的网站复制权限 - 结果是意外的。所有用户都被正确重写,但许多权限都是错误的(例如只有View的Web-Admins)。任何人都知道如何解决这个问题?提前谢谢!
//ealier here I clear all permissions from destSite (it works fine)
clientContext.Load(sourceSite.RoleAssignments);
clientContext.ExecuteQuery();
for (int i = 0; i < sourceSite.RoleAssignments.Count; i++)//scource -> dest copy
//foreach (RoleAssignment role in sourceSite.RoleAssignments)
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
RoleAssignment role = sourceSite.RoleAssignments[i];
clientContext.Load(role, r => r.Member, r => r.RoleDefinitionBindings);
clientContext.ExecuteQuery();
destSite.RoleAssignments.Add(role.Member, role.RoleDefinitionBindings);
premCoppied++;
});
}