コード例 #1
0
        private static void DetectMenuAction()
        {
            bool inValidAction = false;

            do
            {
                Console.Write("Keuze: ");
                int.TryParse(Console.ReadLine(), out int keuze);
                Console.WriteLine("\n");

                switch (keuze)
                {
                case 1:
                    ExtensionMethods.WriteTestRecords(ItemMgr.GetRecords());
                    break;

                case 2:
                    SelectedProfile = ExtensionMethods.SelectProfile(AccountMgr.GetProfiles());
                    break;

                case 3:
                    SelectedSubplatform = ExtensionMethods.SelectSubplatform(SubplatformMgr.GetSubplatforms());
                    break;

                case 4:
                    if (SelectedProfile == null)
                    {
                        throw new Exception(
                                  "U heeft nog geen account geselecteerd, gelieve er eerst een te kiezen");
                    }
                    AccountMgr.AddSubscription(SelectedProfile, ExtensionMethods.SelectItem(ItemMgr.GetPersons()));
                    break;

                case 5:
                    if (SelectedProfile == null)
                    {
                        throw new Exception(
                                  "U heeft nog geen account geselecteerd, gelieve er eerst een te kiezen");
                    }
                    AccountMgr.RemoveSubscription(SelectedProfile,
                                                  ExtensionMethods.SelectItem(SelectedProfile.Subscriptions));
                    break;

                case 6:
                    //AccountMgr.SendWeeklyReviews();
                    break;

                case 7:
                    if (SelectedSubplatform == null)
                    {
                        throw new Exception(
                                  "U heeft nog geen subplatform geselecteerd, gelieve er eerst een te kiezen");
                    }
                    int days = int.Parse(SelectedSubplatform.Settings
                                         .FirstOrDefault(se => se.SettingName.Equals(Setting.Platform.DAYS_TO_KEEP_RECORDS)).Value);
                    ItemMgr.CleanupOldRecords(SelectedSubplatform);
                    break;

                case 8:
                    Seed();
                    break;

                case 9:
                    List <Item> itemsToUpdate = new List <Item>();
                    AccountMgr.GenerateAllAlerts(SelectedProfile.Subscriptions);
                    break;

                case 10:
                    ExtensionMethods.ShowRecords(ItemMgr.GetRecords());
                    break;

                case 11:
                    ExtensionMethods.ShowPersons(ItemMgr.GetPersons());
                    break;

                case 12:
                    ExtensionMethods.ShowSubScribedItems(SelectedProfile);
                    break;

                case 99:
                    ShowHelp();
                    break;

                case 0:
                    Stop = true;
                    return;

                default:
                    Console.WriteLine("Geen geldige keuze!");
                    inValidAction = true;
                    break;
                }
            } while (inValidAction);
        }