static void Main(string[] args) { //Set a constant for the size of the collection const int wineItemCollectionSize = 4000; //Set a constant for the path to the CSV File const string pathToCSVFile = "../../../datafiles/winelist.csv"; //Create an instance of the UserInterface class UserInterface userInterface = new UserInterface(); //Create an instance of the WineItemCollection class IWineCollection wineItemCollection = new WineItemCollection(wineItemCollectionSize); //Create an instance of the CSVProcessor class CSVProcessor csvProcessor = new CSVProcessor(); //Display the Welcome Message to the user userInterface.DisplayWelcomeGreeting(); //Display the Menu and get the response. Store the response in the choice integer //This is the 'primer' run of displaying and getting. int choice = userInterface.DisplayMenuAndGetResponse(); while (choice != 5) { switch (choice) { case 1: //Load the CSV File bool success = csvProcessor.ImportCSV(wineItemCollection, pathToCSVFile); if (success) { //Display Success Message userInterface.DisplayImportSuccess(); } else { //Display Fail Message userInterface.DisplayImportError(); } break; case 2: //Print Entire List Of Items string[] allItems = wineItemCollection.GetPrintStringsForAllItems(); if (allItems.Length > 0) { //Display all of the items userInterface.DisplayAllItems(allItems); } else { //Display error message for all items userInterface.DisplayAllItemsError(); } break; case 3: //Search For An Item string searchQuery = userInterface.GetSearchQuery(); string itemInformation = wineItemCollection.FindById(searchQuery); if (itemInformation != null) { userInterface.DisplayItemFound(itemInformation); } else { userInterface.DisplayItemFoundError(); } break; case 4: //Add A New Item To The List string[] newItemInformation = userInterface.GetNewItemInformation(); if (wineItemCollection.FindById(newItemInformation[0]) == null) { wineItemCollection.AddNewItem(newItemInformation[0], newItemInformation[1], newItemInformation[2]); userInterface.DisplayAddWineItemSuccess(); } else { userInterface.DisplayItemAlreadyExistsError(); } break; } //Get the new choice of what to do from the user choice = userInterface.DisplayMenuAndGetResponse(); } }
static void Main(string[] args) { //Set a constant for the size of the collection const int wineItemCollectionSize = 4000; //Create an instance of the UserInterface class UserInterface userInterface = new UserInterface(); //Create an instance of the WineItemCollection class IWineCollection wineItemCollection = new WineItemCollection(wineItemCollectionSize); //Get access to the collection of tables BeverageBCampbellEntities beverageEntities = new BeverageBCampbellEntities(); //Display the Welcome Message to the user userInterface.DisplayWelcomeGreeting(); //Display the Menu and get the response. Store the response in the choice integer //This is the 'primer' run of displaying and getting. int choice = userInterface.DisplayMenuAndGetResponse(); while (choice != 7) { switch (choice) { case 1: //Load the CSV File //bool success = csvProcessor.ImportCSV(wineItemCollection, pathToCSVFile); bool success; try { foreach (Beverage bev in beverageEntities.Beverages) { wineItemCollection.AddNewItem(bev.id, bev.name, bev.pack); } success = true; } catch { success = false; } if (success) { //Display Success Message userInterface.DisplayImportSuccess(); } else { //Display Fail Message userInterface.DisplayImportError(); } break; case 2: //Print Entire List Of Items string[] allItems = wineItemCollection.GetPrintStringsForAllItems(); if (allItems.Length > 0) { //Display all of the items userInterface.DisplayAllItems(allItems); } else { //Display error message for all items userInterface.DisplayAllItemsError(); } break; case 3: //Search For An Item string searchQuery = userInterface.GetSearchQuery(); string itemInformation = wineItemCollection.FindById(searchQuery); if (itemInformation != null) { userInterface.DisplayItemFound(itemInformation); } else { userInterface.DisplayItemFoundError(); } break; case 4: //Add A New Item To The List //ID Description Pack string[] newItemInformation = userInterface.GetNewItemInformation(); if (wineItemCollection.FindById(newItemInformation[0]) == null) { wineItemCollection.AddNewItem(newItemInformation[0], newItemInformation[1], newItemInformation[2]); userInterface.DisplayAddWineItemSuccess(); } else { userInterface.DisplayItemAlreadyExistsError(); } break; case 5: //Update an existing item searchQuery = userInterface.GetSearchQuery(); itemInformation = wineItemCollection.FindById(searchQuery); if (itemInformation != null) { userInterface.DisplayItemFound(itemInformation); string[] replaceItemInformation = userInterface.GetNewItemInformation(); wineItemCollection.Overwrite(searchQuery, replaceItemInformation[0], replaceItemInformation[1], replaceItemInformation[2]); } else { userInterface.DisplayItemFoundError(); } break; case 6: //Delete an existing item searchQuery = userInterface.GetSearchQuery(); wineItemCollection.Delete(searchQuery); break; } //Get the new choice of what to do from the user choice = userInterface.DisplayMenuAndGetResponse(); } }