SqlRoleProvider.ApplicationName Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece el nombre de la aplicación para la que se va a almacenar y recuperar información de roles.
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
Valor de propiedad
El nombre de la aplicación para la que se va a almacenar y recuperar información de roles. El valor predeterminado es el valor de la propiedad ApplicationPath para la propiedad Request actual.
Excepciones
Un llamador que no tiene permiso de hospedaje de ASP.NET ApplicationName intentó establecer la propiedad High.
Se intentó establecer la propiedad ApplicationName en una cadena más larga de 256 caracteres.
Ejemplos
En el ejemplo siguiente se muestra el roleManager
elemento de la system.web
sección del archivo Web.config para una aplicación de ASP.NET. Especifica la instancia de la SqlRoleProvider aplicación y establece la ApplicationName propiedad en 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>
Comentarios
la ApplicationName usa SqlRoleProvider para asociar usuarios y roles a diferentes aplicaciones. Esto permite que varias aplicaciones usen la misma base de datos para almacenar información de usuario y rol sin conflictos entre nombres de usuario duplicados o nombres de rol. Varias aplicaciones de ASP.NET pueden usar la misma base de datos especificando el mismo valor en la ApplicationName propiedad . La ApplicationName propiedad se puede establecer mediante programación o se puede establecer mediante declaración en el archivo de configuración de la aplicación web mediante el applicationName
atributo .
Si no se especifica un valor para el atributo en el applicationName
archivo de configuración de la aplicación web, se usa el HttpRequest.ApplicationPath valor de propiedad para el objeto actual HttpContext.Request .
Precaución
Dado que una única instancia de proveedor de roles predeterminada se usa para todas las solicitudes atendidas por un HttpApplication objeto, puede tener varias solicitudes que se ejecutan simultáneamente e intentar establecer el valor de la ApplicationName propiedad. 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. Se recomienda evitar escribir código que permita a los usuarios establecer la ApplicationName propiedad a menos que sea necesario. Un ejemplo de una aplicación en la que puede ser 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 usuario único y no una aplicación web.