CSOM - 获取库根文件夹的用户权限

CSOM - Get user permissions for root folder of a library

我正在尝试为 Sharepoint 文档库中的某个文件夹(我不知道是哪个文件夹)获取用户权限。我正在使用这样的代码:

var folder = context.Web.GetFolderByServerRelativeUrl(relativeUrl);
context.Load(folder);
context.ExecuteQuery();
ListItem listItem = folder.ListItemAllFields;
context.Load(listItem);
context.ExecuteQuery();
var permissions = listItem.GetUserEffectivePermissions(userLoginName);
context.ExecuteQuery();

这适用于文档库根文件夹以外的所有文件夹。例外说:

Cannot enable method or retrieve property from null object. The object returned by the call stack below is null. ListItemAllFields

根文件夹好像没有关联的ListItem?那我怎么才能获得这些权限呢?

提前谢谢你。

SharePoint 库根文件夹实际上 return 空 ListItem 对象。

另一种获取根文件夹权限的方法是直接获取库权限,这与根文件夹的相同:

            Web web = context.Web;
            context.Load(web);
            context.ExecuteQuery();
            List list = web.Lists.GetByTitle("Documents");
            context.Load(list);
            context.ExecuteQuery();
            var permissons=list.GetUserEffectivePermissions("i:0#.f|membership|user@Tenant.onmicrosoft.com");
            context.ExecuteQuery()