我试图在c#中检查SharePoint用户的权限,并且遇到了以下似乎有效的代码:

isGranted = spweb.DoesUserHavePermissions(userlogin, SPBasePermissions.EmptyMask | SPBasePermissions.ViewPages);


第一个参数是要检查其权限的用户。第二个参数是检查用户是否具有权限。

我的问题是,emptymask和viewpages权限之间的按位运算结果是什么?实际检查的是什么权限?

最佳答案

由于EmptyMask is defined as zero,结果与不带SPBasePermissions.ViewPagesEmptyMask传递的结果相同:

[Flags]
public enum SPBasePermissions
{
    EmptyMask =                 0×0000000000000000,
    ...
}

07-25 20:53