注意:此属性在 .NET Framework 2.0 版中是新增的。
获取或设置要存储和检索其角色信息的应用程序的名称。
命名空间:System.Web.Security
程序集:System.Web(在 system.web.dll 中)
Public Shared Property ApplicationName As String
Dim value As String
value = Roles.ApplicationName
Roles.ApplicationName = value
public static string ApplicationName { get; set; }
public:
static property String^ ApplicationName {
String^ get ();
void set (String^ value);
}
/** @property */
public static String get_ApplicationName ()
/** @property */
public static void set_ApplicationName (String value)
public static function get ApplicationName () : String
public static function set ApplicationName (value : String)
属性值
要存储和检索其角色信息的应用程序的名称。
ApplicationName 属性由 Roles 类使用,用于将用户和角色与不同的应用程序相关联。这使多个应用程序能够使用相同的数据源来存储用户和角色信息,而不会在重复的用户名或重复的角色名之间遇到冲突。通过在 ApplicationName 属性中指定相同的值,多个 ASP.NET 应用程序可以使用相同的数据源。可以通过编程方式设置 ApplicationName 属性 (Property),也可以使用 applicationName 属性 (Attribute) 以声明方式在 Web 应用程序的配置文件中设置它。
如果 Web 应用程序使用 SqlRoleProvider 类,并且未在配置文件中为 applicationName 属性 (Attribute) 指定值,则会使用当前 HttpContext.Request 属性 (Property) 的 HttpRequest.ApplicationPath 属性 (Property) 值。
警告 |
|---|
| 由于将单个默认角色提供程序的实例用于由 HttpApplication 对象满足的所有请求,因此,可以让多个请求同时执行并尝试设置 ApplicationName 属性值。ApplicationName 属性对于多次写入而言不是线程安全的,并且对于应用程序的多个用户而言,更改 ApplicationName 属性值可能会导致意外的行为。除非有必要,否则应避免写入代码,以免用户设置 ApplicationName 属性。可能需要设置 ApplicationName 属性的应用程序的示例是:为多个应用程序管理角色数据的管理性应用程序。这样的应用程序应是单用户应用程序而不是 Web 应用程序。 |
下面的示例演示 ASP.NET 应用程序的 Web.config 文件中 system.web 节的 roleManager 元素。它指定应用程序使用 SqlRoleProvider 实例,并将 applicationName 属性设置为 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>
Windows 98、Windows 2000 SP4、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
.NET Framework
受以下版本支持:2.0