SqlMembershipProvider.ApplicationName 属性

定义

获取或设置要存储和检索其成员资格信息的应用程序的名称。

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

属性值

应用程序的名称,将存储和检索该应用程序的成员资格信息。 默认值为当前 ApplicationPathRequest 属性值。

例外

尝试将 ApplicationName 属性设置为空字符串或 null

尝试将 ApplicationName 属性设置为长于 256 个字符的字符串。

示例

下面的代码示例演示 ASP.NET 应用程序的 Web.config 文件的 部分中的成员 资格 元素 system.web 。 它指定应用程序的 SqlMembershipProvider 实例并将 设置为 ApplicationNameMyApplication

<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">  
  <providers>  
    <add name="SqlProvider"  
      type="System.Web.Security.SqlMembershipProvider"  
      connectionStringName="SqlServices"  
      enablePasswordRetrieval="true"  
      enablePasswordReset="false"  
      requiresQuestionAndAnswer="true"  
      passwordFormat="Encrypted"  
      applicationName="MyApplication" />  
  </providers>  
</membership>  

注解

ApplicationNameSqlMembershipProvider 用于对用户信息进行分组。 通过使用应用程序名称限定用户信息,可以在单个数据库中存储多个应用程序的信息,而不会在重复用户名之间发生冲突。 此外,多个 ASP.NET 应用程序可以通过在 属性中 ApplicationName 指定相同的值来使用相同的用户数据库。 ApplicationName属性可以以编程方式设置,也可以在具有 applicationName 属性的 Web 应用程序的配置文件中以声明方式设置。

如果未在 Web 应用程序的配置文件中为 applicationName 属性指定值,则 ApplicationPath 使用对应用程序发出的第一个请求的属性值。

注意

由于单个默认成员资格提供程序实例用于对象 HttpApplication 处理的所有请求,因此可以同时执行多个请求并尝试设置 ApplicationName 属性值。 属性 ApplicationName 不是线程安全的多次写入,更改 ApplicationName 属性值可能会导致应用程序的多个用户出现意外行为。 建议避免编写代码以允许用户设置 属性, ApplicationName 除非必须。 可能需要设置 ApplicationName 属性的应用程序的一个示例是管理多个应用程序的成员资格数据的管理应用程序。 此类应用程序应是单用户应用程序,而不是 Web 应用程序。

适用于

另请参阅