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; }
static member ApplicationName : string with get, set
Public Shared Property ApplicationName As String

Valore della proprietà

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 usata dalla Roles classe per associare utenti e ruoli a applicazioni diverse. Ciò consente a più applicazioni di usare la stessa origine dati per archiviare informazioni utente e ruolo senza incorrere in 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 un valore non viene specificato per l'attributo applicationName nel file di configurazione, viene usato il HttpRequest.ApplicationPath valore della proprietà per la proprietà corrente HttpContext.Request .

Attenzione

Poiché un'istanza predefinita del provider di ruoli viene usata per tutte le richieste gestite da un HttpApplication oggetto, è possibile avere più richieste in esecuzione simultaneamente e tentare di impostare il valore della ApplicationName proprietà. La ApplicationName proprietà non è thread safe per più scritture e la modifica del valore della ApplicationName proprietà può comportare un 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 proprietà può essere necessaria è un'applicazione amministrativa che gestisce i ApplicationName dati del ruolo per più applicazioni. Tale applicazione deve essere un'applicazione a utente singolo e non un'applicazione Web.

Si applica a

Vedi anche