ReflectionPermission.IsSubsetOf(IPermission) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
确定当前权限是否为指定权限的子集。
public:
override bool IsSubsetOf(System::Security::IPermission ^ target);
public override bool IsSubsetOf (System.Security.IPermission target);
override this.IsSubsetOf : System.Security.IPermission -> bool
Public Overrides Function IsSubsetOf (target As IPermission) As Boolean
参数
- target
- IPermission
将要测试子集关系的权限。 此权限必须与当前权限属于同一类型。
返回
如果当前权限是指定权限的子集,则为 true
;否则为 false
。
例外
target
参数不为 null
,并且与当前权限不属于同一类型。
示例
下面的代码示例演示 方法的行为 IsSubsetOf 。 此示例是为 类提供的更大示例的一 ReflectionPermission 部分。
注意
代码示例旨在显示方法的行为,而不是演示其用法。 通常,安全基础结构使用权限类的方法;它们通常不用于应用程序。
private static void IsSubsetOfDemo()
{
ReflectionPermission memberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.MemberAccess);
ReflectionPermission restrictedMemberAccessPerm = new ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess);
if (restrictedMemberAccessPerm.IsSubsetOf(memberAccessPerm))
{
Console.WriteLine(restrictedMemberAccessPerm.Flags + " is a subset of " +
memberAccessPerm.Flags);
}
else
{
Console.WriteLine(restrictedMemberAccessPerm.Flags + " is not a subset of " +
memberAccessPerm.Flags);
}
}
Private Shared Sub IsSubsetOfDemo()
Dim memberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.MemberAccess)
Dim restrictedMemberAccessPerm As New ReflectionPermission(ReflectionPermissionFlag.RestrictedMemberAccess)
If restrictedMemberAccessPerm.IsSubsetOf(memberAccessPerm) Then
Console.WriteLine(restrictedMemberAccessPerm.Flags + " is a subset of " + memberAccessPerm.Flags)
Else
Console.WriteLine(restrictedMemberAccessPerm.Flags.ToString() + _
" is not a subset of " + memberAccessPerm.Flags.ToString())
End If
End Sub
注解
如果当前权限指定由指定权限完全包含的一组操作,则当前权限是指定权限的子集。 例如,表示C:\example.txt访问权限的权限是表示对 C:\的访问权限的子集。 如果此方法返回 true
,则当前权限表示对受保护资源的访问权限不会超过指定权限。