Azureの小ネタ (改)

~Azureネタを中心に、色々とその他の技術的なことなどを~

開発エミュレータで実行されているかの判定

あけましておめでとうございます。今年はもう少し更新頻度を上げていきたいと思っている所存でございます。


Azureでは、実行環境の判定するメソッドが提供されています。

  1. RoleEnvironment.IsAvailable
  2. RoleEnvironment.IsEmulated

の2つ。IsAvailableは、SDK1.4以降に追加され、IsEmulatedは、SDK1.5以降に追加されています。


このあたりのお話は、

で触れられているので参考にしていただきたい。要約すると、IsEmulatedは、環境によって例外を発生させてしまう恐れがあるので、IsAvaiableと組み合わせて利用する必要があるとの話です。

コードで示すと以下。

            if (RoleEnvironment.IsAvailable)
            {
                // Azureの環境 (エミュレータ/本番)

                if (RoleEnvironment.IsEmulated)
                {
                    // エミュレーター環境
                }
                else
                {
                    // 本番環境
                }

            }
            else
            {
                // 非Azure環境
            }

それでは、今日もナイスデプロイを。