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
также вызываются методы этих разрешений.