这个C#Bitwise-OR的结果是什么?

dav*_*823 2 c# enums sharepoint-2010 bitwise-or

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

isGranted = spweb.DoesUserHavePermissions(userlogin, SPBasePermissions.EmptyMask | SPBasePermissions.ViewPages);
Run Code Online (Sandbox Code Playgroud)

第一个参数是用户检查权限.第二个参数是检查用户是否拥有的权限.

我的问题是,bitmask或在emptymask和viewpages权限之间的结果是什么?这实际上是在检查什么权限?

das*_*ght 6

由于EmptyMask 定义为零,结果与传递SPBasePermissions.ViewPagesno 相同EmptyMask:

[Flags]
public enum SPBasePermissions
{
    EmptyMask =                 0×0000000000000000,
    ...
}
Run Code Online (Sandbox Code Playgroud)