Condividi tramite


Roles.ApplicationName Proprietà

Definizione

Ottiene o imposta il nome dell'applicazione per cui archiviare e recuperare informazioni sui ruoli.

public:
 static property System::String ^ ApplicationName { System::String ^ get(); void set(System::String ^ value); };
public static string ApplicationName { get; set; }
member this.ApplicationName : string with get, set
Public Shared Property ApplicationName As String

Valore della proprietà

String

Nome dell'applicazione per cui archiviare e recuperare informazioni sui ruoli.

Esempio

Nell'esempio seguente viene illustrato l'elemento roleManager nella system.web sezione del file Web.config per un'applicazione ASP.NET. Specifica che l'applicazione usa un'istanza SqlRoleProvider e imposta l'attributo applicationName su MyApplication.

<roleManager defaultProvider="SqlProvider"
  enabled="true"
  cacheRolesInCookie="true"
  cookieName=".ASPROLES"
  cookieTimeout="30"
  cookiePath="/"
  cookieRequireSSL="false"
  cookieSlidingExpiration="true"
  cookieProtection="All" >
  <providers>
    <add
      name="SqlProvider"
      type="System.Web.Security.SqlRoleProvider"
      connectionStringName="SqlServices"
      applicationName="MyApplication" />
  </providers>
</roleManager>

Commenti

La ApplicationName proprietà viene utilizzata dalla Roles classe per associare utenti e ruoli a applicazioni diverse. In questo modo, più applicazioni possono usare la stessa origine dati per archiviare informazioni utente e ruolo senza conflitti tra nomi utente duplicati o nomi di ruolo duplicati. Più applicazioni ASP.NET possono usare la stessa origine dati specificando lo stesso valore nella ApplicationName proprietà . È possibile impostare la ApplicationName proprietà a livello di codice oppure impostarla in modo dichiarativo nel file di configurazione per l'applicazione Web usando l'attributo applicationName .

Se l'applicazione Web usa la SqlRoleProvider classe e non viene specificato un valore per l'attributo applicationName nel file di configurazione, viene utilizzato il HttpRequest.ApplicationPath valore della proprietà per la proprietà corrente HttpContext.Request .

Attenzione

Poiché per tutte le richieste gestite da un HttpApplication oggetto viene usata una singola istanza del provider di ruoli predefinita, è possibile eseguire più richieste contemporaneamente e tentare di impostare il valore della ApplicationName proprietà. La ApplicationName proprietà non è thread-safe per più scritture e la modifica del valore della proprietà può comportare un ApplicationName comportamento imprevisto per più utenti di un'applicazione. È consigliabile evitare di scrivere codice per consentire agli utenti di impostare la ApplicationName proprietà, a meno che non sia necessario. Un esempio di applicazione in cui l'impostazione della ApplicationName proprietà può essere necessaria è un'applicazione amministrativa che gestisce i dati dei ruoli per più applicazioni. Tale applicazione deve essere un'applicazione a utente singolo e non un'applicazione Web.

Si applica a

Vedi anche