ReflectionPermission.IsSubsetOf(IPermission) Метод

Определение

Определяет, является ли текущее разрешение подмножеством заданного разрешения.Determines whether the current permission is a subset of the specified permission.

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

Разрешение, для которого требуется проверить отношение подмножества.A permission that is to be tested for the subset relationship. Его тип должен совпадать с типом текущего разрешения.This permission must be of the same type as the current permission.

Возвраты

Значение true, если текущее разрешение является подмножеством указанного разрешения. В противном случае — значение false.true if the current permission is a subset of the specified permission; otherwise, false.

Исключения

Параметр target не равен null и имеет тип, не совпадающий с типом текущего разрешения.The target parameter is not null and is not of the same type as the current permission.

Примеры

В следующем примере кода показано поведение IsSubsetOf метода.The following code example shows the behavior of the IsSubsetOf method. Этот пример является частью большого примера, ReflectionPermission приведенного для класса.This example is part of a larger example provided for the ReflectionPermission class.

Примечание

Пример кода предназначен для отображения поведения метода, а не для демонстрации его использования.The code example is intended to show the behavior of the method, not to demonstrate its use. Как правило, в инфраструктуре безопасности используются методы классов разрешений. они обычно не используются в приложениях.In general, the methods of permission classes are used by the security infrastructure; they are not typically used in applications.

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

Комментарии

Текущее разрешение является подмножеством указанного разрешения, если текущее разрешение указывает набор операций, полностью содержащихся в указанном разрешении.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. Например, разрешение, представляющее доступ к К:\ексампле.ткст, является подмножеством разрешения, представляющего доступ к C:\.For example, a permission that represents access to C:\example.txt is a subset of a permission that represents access to C:\. Если этот метод возвращает trueзначение, текущее разрешение не предоставляет больше доступа к защищенному ресурсу, чем указанное разрешение.If this method returns true, the current permission represents no more access to the protected resource than does the specified permission.

Применяется к