この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

RoleEnvironment クラス

 

更新日: 2013年12月

実行中のロール インスタンスの構成、エンドポイント、およびステータスに関する情報を提供します。

名前空間:   Microsoft.WindowsAzure.ServiceRuntime
アセンブリ:  Microsoft.WindowsAzure.ServiceRuntime (Microsoft.WindowsAzure.ServiceRuntime.dll 内)

System.Object
  Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment

<WindowsAzureHostingPermissionAttribute(SecurityAction.LinkDemand,
	Unrestricted := True)>
Public NotInheritable Class RoleEnvironment

名前説明
System_CAPS_pubpropertySystem_CAPS_staticCurrentRoleInstance

取得、 RoleInstance をコードが現在実行されているロール インスタンスを表すオブジェクト。

System_CAPS_pubpropertySystem_CAPS_staticDeploymentId

ロール インスタンスが実行されているデプロイの一意の識別子を取得します。

System_CAPS_pubpropertySystem_CAPS_staticIsAvailable

ロール インスタンスが Microsoft Azure 環境で実行されているかどうかを示します。

System_CAPS_pubpropertySystem_CAPS_staticIsEmulated

ロール インスタンスが実行されているかどうかを示す、 Microsoft Azure コンピューティング エミュレーターです。

System_CAPS_pubpropertySystem_CAPS_staticRoles

セットを取得 Role ホステッド サービスに対して定義されたオブジェクトです。

名前説明
System_CAPS_pubmethodEquals(Object)

(Object から継承されました。)

System_CAPS_pubmethodSystem_CAPS_staticGetConfigurationSettingValue(String)

.cscfg 内の設定値を取得します。

System_CAPS_pubmethodGetHashCode()

(Object から継承されました。)

System_CAPS_pubmethodSystem_CAPS_staticGetLocalResource(String)

指定したローカル ストレージ リソースを取得します。

System_CAPS_pubmethodGetType()

(Object から継承されました。)

System_CAPS_pubmethodSystem_CAPS_staticRequestRecycle()

現在のロール インスタンスの停止および再起動を要求します。

System_CAPS_pubmethodToString()

(Object から継承されました。)

名前説明
System_CAPS_pubeventSystem_CAPS_staticChanged

実行中のロール インスタンスにサービス構成の変更が適用された後に発生します。

System_CAPS_pubeventSystem_CAPS_staticChanging

実行中のロール インスタンスにサービス構成の変更が適用される前に発生します。

System_CAPS_pubeventSystem_CAPS_staticSimultaneousChanged

実行中のロール インスタンスにサービス構成の同時変更が適用された後に発生します。 同時変更は、すべてのロール インスタンスに同時に影響します。

System_CAPS_pubeventSystem_CAPS_staticSimultaneousChanging

実行中のロール インスタンスにサービス構成の同時変更が適用される前に発生します。 同時変更は、すべてのロール インスタンスに同時に影響します。

System_CAPS_pubeventSystem_CAPS_staticStatusCheck

ロール インスタンスの状態を示すために定期的な間隔で発生します。

System_CAPS_pubeventSystem_CAPS_staticStopping

ロール インスタンスが停止されようとしているときに発生します。

使用する、 RoleEnvironment クラスを構成設定、ローカル ストレージ リソース、および指定されたロール インスタンスのエンドポイント情報を取得します。 このクラスはまた、構成の変更に対応すること、およびロール インスタンスが停止されようとしているときに通知を受信することをロール インスタンスに許可するイベントを提供します。

System_CAPS_noteメモ

Microsoft Azure 1.3 以降では、文字 "RD" で始まる環境変数 ("RdRoleID" など) を独自に使用するために確保しています。 アプリケーションでは、"RD"では、特定の状況で始まる環境変数を作成する場合、 IsAvailable が返される false, 、およびその他のメソッドとプロパティの RoleEnvironment クラスは、エラー メッセージ「ロールの検出データは使用できません」になります。 これを修正するには、文字 "RD" で始まらない環境変数を使用します。

System_CAPS_noteメモ

RoleEnvironment クラスをスタンドアロン コンポーネントを Azure のロールの外部での Azure の仮想マシンで使用できます。 これらのコンポーネントは、実行可能なプログラムとすることができます (たとえば、ロール インスタンスにリモート アクセスし、コマンドラインからコンポーネントを起動する)。 これらのプロセスにアクセスする高度な特権で実行する必要があります、 RoleEnvironment クラスです。

次のコード例は、取得、および構成設定を使用して MySetting と呼ばれる値を記述する方法を示しています。、 GetConfigurationSettingValue メソッド。


var settingValue = RoleEnvironment.GetConfigurationSettingValue("MySetting"); Trace.WriteLine("The setting value is: " + settingValue, "Information");

定義と設定の構成についての詳細については、次を参照してください。 Windows Azure Service Configuration SchemaWindows Azure Service Definition Schemaです。

次のコード例は、ローカル ストレージ リソースを取得し、そこにテキスト ファイルを書き込む方法を示しています。


// Retrieve an object that points to the local storage resource LocalResource localResource = RoleEnvironment.GetLocalResource("localStoreTwo"); //Define the file name and path string[] paths = { localResource.RootPath, "MyStorageTest.txt"}; String filePath = Path.Combine(paths); using (FileStream writeStream = File.Create(filePath)) { Byte[] textToWrite = new UTF8Encoding(true).GetBytes("Testing Web role storage"); writeStream.Write(textToWrite, 0, textToWrite.Length); }

次のコード例は、現在のロール インスタンスのエンドポイント情報を取得する方法を示します。


var roleInstance = RoleEnvironment.CurrentRoleInstance; foreach (RoleInstanceEndpoint instanceEndpoint in roleInstance.InstanceEndpoints.Values) { Trace.WriteLine("Instance endpoint address and port: " + instanceEndpoint.IPEndpoint, "Information"); Trace.WriteLine("Protocol for the endpoint: " + , instanceEndpoint.Protocol, "Information"); }

次のコード例は、ロール インスタンスに加えられた構成の変更を取得する方法を示します。


public override bool OnStart() { RoleEnvironment.Changed += RoleEnvironmentChanged; return base.OnStart(); } private void RoleEnvironmentChanged(object sender, RoleEnvironmentChangedEventArgs e) { // Get the list of configuration changes var settingChanges = e.Changes.OfType<RoleEnvironmentConfigurationSettingChange>(); foreach (var settingChange in settingChanges) { var message = "Setting: " + settingChange.ConfigurationSettingName; Trace.WriteLine(message, "Information"); } }

イベントは、ServiceDefinition.csdef ファイル内にロールのために内部エンドポイントが定義されている場合にのみ発生します。 詳細については、エンドポイントを定義する、次を参照してください。 です。3c806d3f-e335-4b1e-8a03-115bae2b3aab

すべてのパブリック構造体 (Shared Visual Basic では) メンバーは、スレッド セーフです。 Aインスタンス メンバーの場合は、スレッド セーフであるとは限りません。

トップに戻る
表示: