PermissionSet.Demand Метод

Определение

Принудительно создает SecurityException во время выполнения, если все вызывающие методы, расположенные выше в стеке вызовов, не получили разрешения, указанные текущим экземпляром.

public:
 virtual void Demand();
public void Demand ();
public virtual void Demand ();
abstract member Demand : unit -> unit
override this.Demand : unit -> unit
Public Sub Demand ()
Public Overridable Sub Demand ()

Реализации

Исключения

У вызывающего метода в цепочке вызовов нет требуемых разрешений.

Примеры

В следующем примере кода показано использование Demand метода для запроса всех разрешений в наборе разрешений. Этот пример входит в состав более крупного примера использования класса PermissionSet.

// Demand all the permissions in the set.
Console::WriteLine( "Demand all permissions." );
ps1->Demand();
// Demand all the permissions in the set.
Console.WriteLine("Demand all permissions.");
ps1.Demand();
' Demand all the permissions in the set.
Console.WriteLine("Demand all permissions.")
ps1.Demand()

Комментарии

Используйте Demand для PermissionSet обеспечения того, чтобы все вызывающие абоненты имели все разрешения в наборе с одной операцией.

Разрешения кода, вызывающего этот метод, не проверяются; Проверка начинается с немедленного вызывающего этого кода и переходит к стеку. Стек вызовов обычно представлен как растущий, поэтому методы выше в методах вызова стека вызовов вызовов ниже в стеке вызовов. Demand успешно завершается только в том случае, если не SecurityException создается.

PermissionSet Если содержатся разрешения, которые не наследуютсяCodeAccessPermission, Demand также вызываются методы этих разрешений.

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