System.Security.CodeAccessPermission.IsSubsetOf Method

When implemented by a derived class, determines whether the current permission is a subset of the specified permission.

Syntax

public abstract bool IsSubsetOf (IPermission target)

Parameters

target
A permission that is to be tested for the subset relationship. This permission must be of the same type as the current permission.

Returns

true if the current permission is a subset of the specified permission; otherwise, false.

Exceptions

TypeReason
ArgumentException target is not null and is not of type System.Security.CodeAccessPermission .

Remarks

The current permission is a subset of the specified permission if the current permission specifies a set of operations that is wholly contained by the specified permission. For example, a permission that represents access to C:\example.txt is a subset of a permission that represents access to C:\. If this method returns true, the current permission represents no more access to the protected resource than does the specified permission.

The following statements are required to be true for all overrides of the CodeAccessPermission.IsSubsetOf(IPermission) method. X, Y, and Z represent custom code access permission objects that are not null references, U represents an unrestricted code access permission, and N represents an empty permission with a System.Security.Permissions.PermissionState of System.Security.Permissions.PermissionState.None.

  • X.IsSubsetOf(X) returns true.

  • X.IsSubsetOf(Y) returns the same value as Y.IsSubsetOf(X) if and only if X and Y represent the same set of permissions.

  • If X.IsSubsetOf(Y) and Y.IsSubsetOf(Z) both return true, X.IsSubsetOf(Z) returns true.

  • X.IsSubsetOf(U) returns true.

  • X.IsSubsetOf(N) returns false.

  • N.IsSubsetOf(X) returns true.

If X and Y represent custom code access permission objects that are null references, X.IsSubsetOf(Y) returns true. If Z is also null, the compound set operation X.Union(Y).IsSubsetOf(Z) also returns true because the union of two null permissions is a null permission.

Requirements

Namespace: System.Security
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0, 4.0.0.0