static void Main(string[] args) { //The MAXPLAYERS constant is the physical table size const Int32 MAXCONTACTS = 23; //Declare the player tables Contact[] contacts = new Contact[MAXCONTACTS]; //Keep track of the actual number of players (i.e. logical table size) Int32 contactCount = 0; Int32 number = 0; String lastName = " "; String phoneNumber = " "; String emailAddress = " "; String firstName = " "; ; Console.WriteLine("Contact List"); // display the menu to the user Console.WriteLine("Enter option or M for menu:"); //Main Driver char menuItem; menuItem = GetMenuItem(); while (menuItem != 'X') { ProcessMenuItem(menuItem, firstName, lastName, phoneNumber, emailAddress, contacts, ref contactCount, MAXCONTACTS); menuItem = GetMenuItem(); } Console.WriteLine("\nThank you, goodbye"); Console.ReadLine(); } static char GetMenuItem() { char menuItem; DisplayMenu(); menuItem = IOConsole.GetChar((Console.ReadLine())); while (menuItem != 'C' && menuItem != 'L' && menuItem != 'X' && menuItem != 'R' && menuItem != 'U' && menuItem != 'D') { Console.WriteLine("\nError - Invalid menu item"); DisplayMenu(); //menuItem = IOConsole.GetChar((Console.ReadLine())); } return menuItem; } static void DisplayMenu() { Console.WriteLine("C-> Create Contacts"); Console.WriteLine("R-> Remove Contacts"); Console.WriteLine("U-> Update Contacts"); Console.WriteLine("D -> Load data from file"); Console.WriteLine("S-> Save data to file"); Console.WriteLine("L-> View sorted by last name"); Console.WriteLine("F-> View sorted by first name"); Console.WriteLine("P-> View by partial name search"); Console.WriteLine("T-> View by contact type"); Console.WriteLine("Q-> Quit"); } //Routes to the appropriate process routine based on the user menu choice static void ProcessMenuItem(Char menuItem, String firstName, String lastName, String phoneNumber, String emailAddress, Contact[] contacts, ref Int32 contactCount, Int32 MAXCONTACTS) { switch (menuItem) { case 'C': createContact(); break; case 'R': removeContact(); break; case 'U': updateContact(); break; case 'D': LoadToFile(); break; case 'S': saveToFile(); break; case 'L': sortByLastName(); break; case 'F': sortByFirstName(); break; case 'P': break; case 'T': break; case 'Q': break; } } public static void saveToFile() { } public static void LoadToFile() { }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)