void initViewModels()
        {
            /// TemperatureViewModel setup
            tvm = new TemperatureViewModel();
            string apiKey = "";

            /*if (!string.IsNullOrEmpty(Properties.Settings.Default.apiKey))
             *  {
             *      apiKey = Properties.Settings.Default.apiKey;
             *  }*/

            if (Environment.GetEnvironmentVariable("DOTNET_ENVIRONMENT") == "DEVELOPMENT")
            {
                apiKey = AppConfiguration.GetValue("OWApiKey");
            }

            if (string.IsNullOrEmpty(Properties.Settings.Default.apiKey) && apiKey == "")
            {
                //tvm.RawText = "Aucune clé API, veuillez la configurer";
                tvm.City = "Aucune clé API, veuillez la configurer";
            }
            else
            {
                if (apiKey == "")
                {
                    apiKey = Properties.Settings.Default.apiKey;
                }

                ows = new OpenWeatherService(apiKey);
            }

            tvm.SetTemperatureService(ows);
            ViewModels.Add(tvm);

            var cvm = new ConfigurationViewModel();

            ViewModels.Add(cvm);
        }
 private void ChangePage(string pageName)
 {
     /// TODO 10 : Si on a changé la clé, il faudra la mettre dans le service.
     ///
     /// Algo
     /// Si la vue actuelle est ConfigurationViewModel
     ///   Mettre la nouvelle clé dans le OpenWeatherService
     ///   Rechercher le TemperatureViewModel dans la liste des ViewModels
     ///   Si le service de temperature est null
     ///     Assigner le service de température
     ///
     if (pageName == "ConfigurationViewModel")
     {
         ows.SetApiKey(Properties.Settings.Default.apiKey);
         TemperatureViewModel tvm = (TemperatureViewModel)ViewModels.FirstOrDefault(x => x.Name == "TemperatureViewModel");
         if (tvm.TemperatureService == null)
         {
             tvm.SetTemperatureService(ows);
         }
     }
     /// Permet de retrouver le ViewModel avec le nom indiqé
     CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
 }
        void initViewModels()
        {
            /// TemperatureViewModel setup
            var tvm = new TemperatureViewModel();
            var cvm = new ConfigurationViewModel();

            /// TODO 09 : Indiquer qu'il n'y a aucune clé si le Settings apiKey est vide.
            /// S'il y a une valeur, instancié OpenWeatherService avec la clé
            if (cvm.ApiKey == null || cvm.ApiKey == String.Empty)
            {
                tvm.RawText = "ApiKey manquante, vous devez aller la configurer";
            }
            else
            {
                tvm.RawText = "";
                ows         = new OpenWeatherService(cvm.ApiKey);
            }
            tvm.SetTemperatureService(ows);
            ViewModels.Add(tvm);
            ViewModels.Add(cvm);
            /// TODO 01 : ConfigurationViewModel Add Configuration ViewModel

            CurrentViewModel = ViewModels[0];
        }