SecurityContext.Run(SecurityContext, ContextCallback, Object) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Esegue il metodo specificato nel contesto di sicurezza specificato per il thread corrente.
public:
static void Run(System::Security::SecurityContext ^ securityContext, System::Threading::ContextCallback ^ callback, System::Object ^ state);
public static void Run (System.Security.SecurityContext securityContext, System.Threading.ContextCallback callback, object state);
[System.Security.SecurityCritical]
public static void Run (System.Security.SecurityContext securityContext, System.Threading.ContextCallback callback, object state);
static member Run : System.Security.SecurityContext * System.Threading.ContextCallback * obj -> unit
[<System.Security.SecurityCritical>]
static member Run : System.Security.SecurityContext * System.Threading.ContextCallback * obj -> unit
Public Shared Sub Run (securityContext As SecurityContext, callback As ContextCallback, state As Object)
Parametri
- securityContext
- SecurityContext
Contesto di sicurezza da impostare.
- callback
- ContextCallback
Delegato che rappresenta il metodo da eseguire nel contesto di sicurezza specificato.
- state
- Object
Oggetto da passare al metodo di callback.
- Attributi
Eccezioni
securityContext
è null
.
-oppure-
securityContext
non è stato acquisito tramite un'operazione di acquisizione.
-oppure-
securityContext
è stato già utilizzato come argomento in una chiamata al metodo Run(SecurityContext, ContextCallback, Object).
.NET 5+ (incluso .NET Core): in tutti i casi.
Esempio
Nell'esempio di codice seguente viene illustrato come usare il Run metodo per eseguire un metodo in un contesto di sicurezza specificato.
using System;
using System.Security;
using System.Threading;
class Test
{
static void Main()
{
SecurityContext.Run(SecurityContext.Capture(),
new ContextCallback(Callback), "Hello world.");
}
static void Callback(object o)
{
Console.WriteLine(o);
}
}
Imports System.Security
Imports System.Threading
Class Test
Shared Sub Main()
Dim cCallBack As New ContextCallback(AddressOf Callback)
SecurityContext.Run(SecurityContext.Capture(), cCallBack, "Hello world.")
End Sub
Shared Sub Callback(ByVal o As Object)
Console.WriteLine(o)
End Sub
End Class
Commenti
Il contesto di sicurezza per il thread corrente viene restituito allo stato precedente al termine della chiamata al metodo.