Aracılığıyla paylaş


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 izin talebi yok.

Örnekler

Aşağıdaki kod örneği, bir izin kümesindeki Demand tüm izinleri talep etmek 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 büyümekte olarak temsil edilir, böylece çağrı yığınında daha üstteki yöntemler çağrı yığınında daha düşük çağrı yöntemleridir. 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