このプロパティでは、パーソナライズ情報に固有のアプリケーションの名前を取得または設定します。
宣言
// C#
public override string ApplicationName{get; set;}
プロパティ値
アプリケーションの名前。applicationName属性がアプリケーション構成ファイルで指定されていない場合、または値が空の文字列の場合は、このプロパティがアプリケーションの仮想パスに設定されます。
例外
HttpException - 呼び出し元に、ASP.NETホスティングに対する高い信頼性がありません。
ProviderException - ApplicationName文字列が256文字を超えています。
備考
ApplicationNameプロパティの主な目的は、OraclePersonalizationProviderオブジェクトによって管理されるデータのスコープを指定することです。同じApplicationName文字列を指定するアプリケーションは、Webパーツのパーソナライズ・サービスの構成時にパーソナライズ状態を共有しますが、一意のApplicationName文字列を指定するアプリケーションはこれを共有しません。OraclePersonalizationProviderは、パーソナライズ状態をアプリケーション名に関連付けて、パーソナライズ・データ・ソースに対して実行される操作のスコープをそれに応じて設定できるようにする必要があります。
次の例では、OraclePersonalizationProviderがScottという名前のユーザーとAppという名前のアプリケーションのパーソナライズ状態を取得するために使用できる典型的なコードを示します。
SELECT * FROM PersonalizationState WHERE UserName='Scott' AND Path='~/Default.aspx' AND ApplicationName='App'
WHERE句の最後のANDは、同じユーザー名とパスでキーが付けられたパーソナライズ状態を含む他のアプリケーションが、Appアプリケーションと競合しないようにします。
構成ファイルのapplicationName属性に値が指定されていない場合、デフォルトは現在のリクエストのApplicationPathプロパティ値になります。構成ファイルの属性名は、大文字と小文字が区別されます。
ApplicationNameプロパティはスレッドセーフではありません。アプリケーション・コードでは、ユーザーにWebアプリケーションでのApplicationNameプロパティの設定を許可しないことをお薦めします。