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