Roles.ApplicationName Propiedad

Definición

Obtiene o establece el nombre de la aplicación para la que se va a almacenar y recuperar información de roles.

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

Valor de propiedad

Nombre de la aplicación para la que se va a almacenar y recuperar información de roles.

Ejemplos

En el ejemplo siguiente se muestra el elemento roleManager en la system.web sección del archivo Web.config para una aplicación de ASP.NET. Especifica que la aplicación usa una SqlRoleProvider instancia de y establece el applicationName atributo MyApplicationen .

<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>

Comentarios

La ApplicationName clase usa la Roles propiedad para asociar usuarios y roles a diferentes aplicaciones. Esto permite que varias aplicaciones usen el mismo origen de datos para almacenar información de usuario y rol sin entrar en conflictos entre nombres de usuario duplicados o nombres de roles duplicados. Varias aplicaciones de ASP.NET pueden usar el mismo origen de datos especificando el mismo valor en la ApplicationName propiedad . Puede establecer la ApplicationName propiedad mediante programación o puede establecerla mediante declaración en el archivo de configuración de la aplicación web mediante el applicationName atributo .

Si la aplicación web usa la SqlRoleProvider clase y no se especifica un valor para el applicationName atributo en el archivo de configuración, se usa el HttpRequest.ApplicationPath valor de propiedad de la propiedad actual HttpContext.Request .

Precaución

Dado que se usa una única instancia de proveedor de roles predeterminada para todas las solicitudes atendidas por un HttpApplication objeto, puede tener varias solicitudes que se ejecutan simultáneamente e intentar establecer el valor de propiedad ApplicationName . La ApplicationName propiedad no es segura para subprocesos para varias escrituras y cambiar el valor de la ApplicationName propiedad puede dar lugar a un comportamiento inesperado para varios usuarios de una aplicación. Debe evitar escribir código para permitir que los usuarios establezcan la ApplicationName propiedad, a menos que sea necesario. Un ejemplo de una aplicación en la que es posible que sea necesario establecer la ApplicationName propiedad es una aplicación administrativa que administra los datos de rol para varias aplicaciones. Esta aplicación debe ser una aplicación de un solo usuario y no una aplicación web.

Se aplica a

Consulte también