CodeAccessPermission.IsSubsetOf(IPermission) 方法

定义

由派生类实现时,确定当前权限是否为指定权限的子集。

public:
 abstract bool IsSubsetOf(System::Security::IPermission ^ target);
public abstract bool IsSubsetOf(System.Security.IPermission target);
abstract member IsSubsetOf : System.Security.IPermission -> bool
Public MustOverride Function IsSubsetOf (target As IPermission) As Boolean

参数

target
IPermission

要针对子集关系进行测试的权限。 此权限的类型必须与当前权限相同。

返回

true 如果当前权限是指定权限的子集,否则,为 false.

实现

例外

参数 targetnull 与当前权限的类型不同。

注解

如果当前权限指定由指定权限完全包含的操作集,则当前权限是指定权限的子集。 例如,表示对 C:\example.txt 的访问权限的权限是表示对 C:\的访问权限的子集。 如果此方法返回 true,则当前权限表示对受保护资源的访问权限不超过指定的权限。

对于该方法的所有重写trueIsSubsetOf需要以下语句。 XYZ 表示非空引用的自定义代码访问权限对象,U 表示不受限制的代码访问权限,N 表示一个空权限,其中一个为空PermissionStateNone

  • X.IsSubsetOf(X) 返回 true
  • X.IsSubsetOf(Y) 返回与 Y 相同的值。IsSubsetOf(X)仅当 XY 表示同一组权限时。
  • 如果 为 X。IsSubsetOf(Y) 和 Y。IsSubsetOf(Z) 都返回 trueX。IsSubsetOf(Z) 返回 true
  • X.IsSubsetOf(U) 返回 true
  • X.IsSubsetOf(N) 返回 false
  • N.IsSubsetOf(X) 返回 true

如果 XY 表示为 null 引用的自定义代码访问权限对象,则 为 X。IsSubsetOf(Y) 返回 true。 如果 Z 也为 null,则复合集运算 X。Union(Y)。IsSubsetOf(Z)也返回 true ,因为两个 null 权限的并集是空权限。

实施者说明

必须在派生类中重写此方法。

适用于