PermissionSet.Demand Yöntem

Tanım

Çağrı yığınında daha yüksek olan tüm arayanlara geçerli örnek tarafından belirtilen izinler verilmediyse, çalışma zamanında bir SecurityException zorlar.

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 ()

Uygulamalar

Özel durumlar

Çağrı zincirindeki bir çağıranın talep edilen izni yok.

Örnekler

Aşağıdaki kod örneği, bir izin kümesindeki Demand tüm izinleri istemek için yönteminin kullanımını gösterir. Bu kod örneği, sınıfı için PermissionSet sağlanan daha büyük bir örneğin parçasıdır.

// 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()

Açıklamalar

Tüm çağıranların tek bir PermissionSet işlemle kümedeki tüm izinlere sahip olduğundan emin olmak için üzerinde kullanınDemand.

Bu yöntemi çağıran kodun izinleri incelenmez; denetimi, bu kodun hemen çağırandan başlar ve yığına devam eder. Çağrı yığını genellikle artan olarak temsil edilir, böylece çağrı yığınında daha yüksek yöntemler çağrı yığınında daha düşük çağrı yöntemleri çağırır. Demand yalnızca hayır SecurityException atılırsa başarılı olur.

PermissionSet,'den CodeAccessPermissionDemand devralmayan izinler içeriyorsa, bu izinlerin yöntemleri de çağrılır.

Şunlara uygulanır