次の方法で共有


SqlRoleProvider.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 プロパティ値です。

例外

ASP.NET の ApplicationName ホスト許可を持たない呼び出し元が、High プロパティを設定しようとしました。

ApplicationName に 256 文字を超える文字列を設定しようとしました。

次の例は、 roleManager ASP.NET アプリケーションの Web.config ファイルの セクションの 要素 system.web を示しています。 アプリケーション SqlRoleProvider のインスタンスを指定し、 プロパティを ApplicationNameMyApplication設定します。

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

注釈

ApplicationNameは、ユーザーとロールをさまざまなアプリケーションに関連付けるために、 によってSqlRoleProvider使用されます。 これにより、複数のアプリケーションで同じデータベースを使用して、重複するユーザー名またはロール名の間で競合が発生することなく、ユーザーとロールの情報を格納できます。 プロパティに同じ値を指定することで、複数の ASP.NET アプリケーションで同じデータベースを ApplicationName 使用できます。 プロパティは ApplicationName プログラムで設定することも、 属性を使用して applicationName Web アプリケーションの構成ファイルで宣言的に設定することもできます。

Web アプリケーションの構成ファイルの 属性に値が指定applicationNameされていない場合は、現在HttpContext.RequestのオブジェクトのHttpRequest.ApplicationPathプロパティ値が使用されます。

注意事項

1 つの既定のロール プロバイダー インスタンスがオブジェクトによって HttpApplication 提供されるすべての要求に使用されるため、複数の要求を同時に実行し、プロパティ値を ApplicationName 設定できます。 プロパティは ApplicationName 複数の書き込みではスレッド セーフではなく、プロパティ値を ApplicationName 変更すると、アプリケーションの複数のユーザーに対して予期しない動作が発生する可能性があります。 必要な場合を除き、ユーザーがプロパティを設定できるコードを ApplicationName 記述しないようにすることをお勧めします。 プロパティの設定 ApplicationName が必要なアプリケーションの例として、複数のアプリケーションのロール データを管理する管理アプリケーションがあります。 このようなアプリケーションは、Web アプリケーションではなく、シングル ユーザー アプリケーションである必要があります。

適用対象

こちらもご覧ください