예제 #1
0
        private void ChangePage(string pageName)
        {
            /// TODO 10 (OK) 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);
                }
            }
            else
            {
                ows.SetApiKey(Properties.Settings.Default.apiKey);
            }



            /// Permet de retrouver le ViewModel avec le nom indiqé
            CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
        }
        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 (CurrentViewModel.Name == "ConfigurationViewModel")
            {
                var Cvm = CurrentViewModel as ConfigurationViewModel;
                ows.SetApiKey(Cvm.ApiKey);

                for (int i = 0; i < ViewModels.Count(); i++)
                {
                    if (ViewModels[i].Name == "TemperatureViewModel")
                    {
                        var Tvm = ViewModels[i] as TemperatureViewModel;

                        if (Tvm.TemperatureService == null)
                        {
                            Tvm.SetTemperatureService(ows);
                        }
                    }
                }
            }



            /// Permet de retrouver le ViewModel avec le nom indiqé
            CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
        }
예제 #3
0
        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
            if (CurrentViewModel == ViewModels[1])
            {
                ///   Mettre la nouvelle clé dans le OpenWeatherService
                ///   Si le service de temperature est null
                if (ows == null)
                {
                    ///     Assigner le service de température
                    ows = new OpenWeatherService(Properties.Settings.Default.apiKey); // on ne peut pas assigné le service sans la clé

                    //Properties.Settings.Default.Save(); //sert a rien
                }
                else
                {
                    ows.SetApiKey(Properties.Settings.Default.apiKey); //si existant
                    //Properties.Settings.Default.Save(); //sert a rien
                }
                ///   Rechercher le TemperatureViewModel dans la liste des ViewModels
                //https://docs.microsoft.com/en-us/dotnet/api/system.linq.enumerable.firstordefault?view=net-5.0
            }

            /// Permet de retrouver le ViewModel avec le nom indiqé
            CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
        }
        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 (CurrentViewModel == ViewModels.Find(x => x.Name == "ConfigurationViewModel"))
            {
                var tempCVM = CurrentViewModel as ConfigurationViewModel;
                var tempTVM = (ViewModels.Find(x => x.Name == "TemperatureViewModel")) as TemperatureViewModel;
                if (ows == null)
                {
                    ows = new OpenWeatherService(Settings.Default.apiKey);
                }
                ows.SetApiKey(Settings.Default.apiKey);
                if (tempTVM.TemperatureService == null)
                {
                    tempTVM.SetTemperatureService(ows);
                }
            }

            /// Permet de retrouver le ViewModel avec le nom indiqé
            CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
        }
        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
            ///

            /// Permet de retrouver le ViewModel avec le nom indiqé
            // CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);

            if (CurrentViewModel.Name == "ConfigurationViewModel")
            {
                ows.SetApiKey(Properties.Settings.Default.apiKey);
                TemperatureViewModel t = (TemperatureViewModel)ViewModels.FirstOrDefault(x => x.Name == "TemperatureViewModel");
                if (t.TemperatureService == null)
                {
                    ITemperatureService itmps = new OpenWeatherService(AppConfiguration.GetValue("apikey"));
                    t.SetTemperatureService(itmps);
                }
            }

            CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
        }
        private void ChangePage(string pageName)
        {
            /// TODO 10 : Si on a changé la clé, il faudra la mettre dans le service.
            var tvm = (TemperatureViewModel)ViewModels.FirstOrDefault(x => x.Name == "TemperatureViewModel");
            var cvm = (ConfigurationViewModel)ViewModels.FirstOrDefault(x => x.Name == "ConfigurationViewModel");

            /// 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);

                if (tvm.TemperatureService == null)
                {
                    tvm.SetTemperatureService(ows);
                }

                if (cvm.ApiKey == null || cvm.ApiKey == String.Empty)
                {
                    tvm.RawText = "ApiKey manquante, vous devez aller la configurer";
                }
                else
                {
                    tvm.RawText = "";
                }
            }
            if (pageName == "TemperatureViewModel")
            {
                ows.SetApiKey(Properties.Settings.Default.apiKey);
                if (cvm.ApiKey == null || cvm.ApiKey == String.Empty)
                {
                    tvm.RawText = "ApiKey manquante, vous devez aller la configurer";
                }
                else
                {
                    tvm.RawText = "";
                }
            }
            /// Permet de retrouver le ViewModel avec le nom indiqé
            CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
        }
        private void ChangePage(string pageName)
        {
            if (CurrentViewModel is ConfigurationViewModel)
            {
                ows.SetApiKey(Properties.Settings.Default.apiKey);

                var vm = (TemperatureViewModel)ViewModels.FirstOrDefault(x => x.Name == typeof(TemperatureViewModel).Name);
                if (vm.TemperatureService == null)
                {
                    vm.SetTemperatureService(ows);
                }
            }

            CurrentViewModel = ViewModels.FirstOrDefault(x => x.Name == pageName);
        }