Roles.ApplicationName Proprietà
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.
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.