SqlRoleProvider.ApplicationName Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit le nom de l’application pour laquelle stocker et récupérer des informations de rôle.
public:
virtual property System::String ^ ApplicationName { System::String ^ get(); void set(System::String ^ value); };
public override string ApplicationName { get; set; }
member this.ApplicationName : string with get, set
Public Overrides Property ApplicationName As String
Valeur de propriété
Nom de l’application pour laquelle stocker et récupérer les informations de rôle. La valeur par défaut est la ApplicationPath valeur de propriété pour le fichier actif Request.
Exceptions
Une tentative a été effectuée pour définir la ApplicationName propriété par un appelant qui n’a High pas d’autorisation d’hébergement ASP.NET.
Une tentative a été effectuée pour définir la ApplicationName chaîne sur une chaîne de plus de 256 caractères.
Exemples
L’exemple suivant montre l’élément roleManager de la system.web section du fichier Web.config pour une application ASP.NET. Elle spécifie l’instance de l’application SqlRoleProvider et définit la ApplicationName propriété MyApplicationsur .
<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>
Remarques
Il ApplicationName est utilisé par l’association SqlRoleProvider d’utilisateurs et de rôles à différentes applications. Cela permet à plusieurs applications d’utiliser la même base de données pour stocker les informations d’utilisateur et de rôle sans entrer en conflit entre les noms d’utilisateurs en double ou les noms de rôles. Plusieurs applications ASP.NET peuvent utiliser la même base de données en spécifiant la même valeur dans la ApplicationName propriété. La ApplicationName propriété peut être définie par programmation, ou elle peut être définie de manière déclarative dans le fichier de configuration de l’application web à l’aide de l’attribut applicationName .
Si une valeur n’est pas spécifiée pour l’attribut applicationName dans le fichier de configuration de l’application Web, la HttpRequest.ApplicationPath valeur de propriété de l’objet actuel HttpContext.Request est utilisée.
Avertissement
Étant donné qu’une seule instance de fournisseur de rôles par défaut est utilisée pour toutes les requêtes traitées par un HttpApplication objet, vous pouvez avoir plusieurs requêtes s’exécutant simultanément et tenter de définir la valeur de propriété ApplicationName . La ApplicationName propriété n’est pas thread-safe pour plusieurs écritures, et la modification de la valeur de la ApplicationName propriété peut entraîner un comportement inattendu pour plusieurs utilisateurs d’une application. Il est recommandé d’éviter d’écrire du code qui permet aux utilisateurs de définir la ApplicationName propriété, sauf si vous devez. Un exemple d’application où la définition de la ApplicationName propriété peut être nécessaire est une application administrative qui gère les données de rôle pour plusieurs applications. Une telle application doit être une application mono-utilisateur et non une application web.