8.1.4.1 ApplicationName

このプロパティでは、パーソナライズ情報に固有のアプリケーションの名前を取得または設定します。

宣言

// C#
public override string ApplicationName{get; set;}

プロパティ値

アプリケーションの名前。applicationName属性がアプリケーション構成ファイルで指定されていない場合、または値が空の文字列の場合は、このプロパティがアプリケーションの仮想パスに設定されます。

例外

HttpException - 呼び出し元に、ASP.NETホスティングに対する高い信頼性がありません。

ProviderException - ApplicationName文字列が256文字を超えています。

備考

ApplicationNameプロパティの主な目的は、OraclePersonalizationProviderオブジェクトによって管理されるデータのスコープを指定することです。同じApplicationName文字列を指定するアプリケーションは、Webパーツのパーソナライズ・サービスの構成時にパーソナライズ状態を共有しますが、一意のApplicationName文字列を指定するアプリケーションはこれを共有しません。OraclePersonalizationProviderは、パーソナライズ状態をアプリケーション名に関連付けて、パーソナライズ・データ・ソースに対して実行される操作のスコープをそれに応じて設定できるようにする必要があります。

次の例では、OraclePersonalizationProviderScottという名前のユーザーとAppという名前のアプリケーションのパーソナライズ状態を取得するために使用できる典型的なコードを示します。

SELECT * FROM PersonalizationState
WHERE UserName='Scott' AND Path='~/Default.aspx'
AND ApplicationName='App'

WHERE句の最後のANDは、同じユーザー名とパスでキーが付けられたパーソナライズ状態を含む他のアプリケーションが、Appアプリケーションと競合しないようにします。

構成ファイルのapplicationName属性に値が指定されていない場合、デフォルトは現在のリクエストのApplicationPathプロパティ値になります。構成ファイルの属性名は、大文字と小文字が区別されます。

ApplicationNameプロパティはスレッドセーフではありません。アプリケーション・コードでは、ユーザーにWebアプリケーションでのApplicationNameプロパティの設定を許可しないことをお薦めします。