Esempio n. 1
0
        private async void BtnDelete_Click(object sender, RoutedEventArgs e)
        {
            string sTitle = "Confirm Delete";
            string sMsg   = "Are you certain you want to delete " + View.Name + "?";
            ContentDialogResult result = await ProfessorOak.ConfirmDialog(sTitle, sMsg);

            if (result == ContentDialogResult.Secondary)
            {
                try
                {
                    View.Route = null;
                    View.Types = null;
                    PokemonRepository pr = new PokemonRepository();
                    await pr.DeletePokemon(View);

                    Frame.GoBack();
                }
                catch (AggregateException ex)
                {
                    string errorMsg = "";
                    foreach (var exception in ex.InnerExceptions)
                    {
                        errorMsg += Environment.NewLine + exception.Message;
                    }
                    ProfessorOak.ShowMessage("One or more exceptions have occured:", errorMsg);
                }
                catch (ApiException apiEx)
                {
                    var sbuilder = new StringBuilder();
                    sbuilder.AppendLine("Errors:");
                    foreach (var error in apiEx.Errors)
                    {
                        sbuilder.AppendLine("-" + error);
                    }
                    ProfessorOak.ShowMessage("PRoblem deleting the Pokemon:", sbuilder.ToString());
                }
                catch (Exception)
                {
                    ProfessorOak.ShowMessage("Error", "Error deleting Pokemon");
                }
            }
        }