SqlRoleProvider.ApplicationName Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia nazwę aplikacji, dla której mają być przechowywane i pobierane informacje o roli.
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
Wartość właściwości
Nazwa aplikacji, dla której mają być przechowywane i pobierane informacje o roli. Wartość domyślna ApplicationPath to wartość właściwości bieżącej Requestwartości .
Wyjątki
Podjęto próbę ApplicationName ustawienia właściwości przez obiekt wywołujący, który nie ma High ASP.NET uprawnienia hostingu.
Podjęto próbę ustawienia ApplicationName ciągu, który jest dłuższy niż 256 znaków.
Przykłady
Poniższy przykład przedstawia roleManager
element w system.web
sekcji pliku Web.config dla aplikacji ASP.NET. Określa wystąpienie aplikacji SqlRoleProvider i ustawia ApplicationName właściwość na 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>
Uwagi
Element ApplicationName jest używany przez program SqlRoleProvider do kojarzenia użytkowników i ról z różnymi aplikacjami. Dzięki temu wiele aplikacji może używać tej samej bazy danych do przechowywania informacji o użytkownikach i rolach bez wystąpienia konfliktów między zduplikowanymi nazwami użytkowników lub nazwami ról. Wiele aplikacji ASP.NET może używać tej samej bazy danych, określając tę samą wartość we ApplicationName właściwości . Właściwość ApplicationName można ustawić programowo lub można ją deklaratywnie ustawić w pliku konfiguracji aplikacji sieci Web przy użyciu atrybutu applicationName
.
Jeśli wartość nie zostanie określona dla atrybutu applicationName
w pliku konfiguracji aplikacji sieci Web, HttpRequest.ApplicationPath zostanie użyta wartość właściwości bieżącego HttpContext.Request obiektu.
Przestroga
Ponieważ pojedyncze domyślne wystąpienie dostawcy roli jest używane dla wszystkich żądań obsługiwanych przez HttpApplication obiekt, można mieć wiele żądań wykonywanych jednocześnie i próbować ustawić ApplicationName wartość właściwości. Właściwość ApplicationName nie jest bezpieczna wątkowo dla wielu zapisów, a zmiana ApplicationName wartości właściwości może spowodować nieoczekiwane zachowanie wielu użytkowników aplikacji. Zaleca się unikanie pisania kodu, który umożliwia użytkownikom ustawianie ApplicationName właściwości, chyba że jest to konieczne. Przykładem aplikacji, w której może być wymagane ustawienie ApplicationName właściwości, jest aplikacja administracyjna, która zarządza danymi roli dla wielu aplikacji. Taka aplikacja powinna być aplikacją dla jednego użytkownika, a nie aplikacją internetową.