A simple menu in a Console Application

c#

Solution

You can use a do while loop for the purpose Make a little modification to your DispalyMenu() method and return the result like this

static public int DisplayMenu()
{   
  Console.WriteLine("Football Manager");
  Console.WriteLine();
  Console.WriteLine("1. Add a Football team");
  Console.WriteLine("2. List the Football teams");
  Console.WriteLine("3. Search for a Football team");
  Console.WriteLine("4. Delete a team");
  Console.WriteLine("5. Exit");
  var result = Console.ReadLine();
  return Convert.ToInt32(result);
}

and write this in your Main() method

int userInput = 0;
do
{
  userInput = DisplayMenu();
}while(userInput!=5);

So for the time being the user does not enter '5', the code will execute in the loop. Hope that helps.

Problem

I am trying to get my menu to repeat, so after selecting and doing option 1, it will got back to the menu and ask for another option to be chosen ``` class Program { static void Main(string[] args) { FootballTeams MyCode = new FootballTeams(); MyCode.ListInit(); MyCode.DisplayMenu(); MyCode.AddTeams(); Console.ReadLine(); MyCode.ListInit(); MyCode.DisplayMenu(); MyCode.DisplayTeams(); Console.ReadLine(); MyCode.ListInit(); MyCode.DisplayMenu(); MyCode.Delete(); Console.ReadLine(); MyCode.ListInit(); MyCode.DisplayMenu(); MyCode.TeamSearch(); Console.ReadLine(); } } ``` Here are the methods with the contents taken out: ``` class FootballTeams { public FootballTeams(){ } List<string> teams; public void ListInit() public void DisplayMenu() { Console.WriteLine("Football Manager"); Console.WriteLine(); Console.WriteLine("1. Add a Football team"); Console.WriteLine("2. List the Football teams"); Console.WriteLine("3. Search for a Football team"); Console.WriteLine("4. Delete a team"); Console.ReadLine(); } public void AddTeams() { Console.WriteLine("Enter a team to be added: "); string userinput = Console.ReadLine(); if (teams.Count < 10) { if (userinput != "Colchester") { teams.Add(userinput); foreach (var item in teams) Console.Write(item.ToString() + " "); } else Console.Write("NOT ALLOWED"); } else Console.Write("MAXIMUM LIMIT REACHED"); } public void DisplayTeams() { foreach(var item in teams) Console.Write(item.ToString() + " "); } public void TeamSearch() { Console.WriteLine("Please enter the team you wish to search for: "); string userinput = Console.ReadLine(); if (teams.Contains(userinput)) Console.WriteLine("Success, team " + userinput); } public void Delete() { Console.WriteLine("Enter a team you wish to delete: "); string userinput = Console.ReadLine(); teams.Remove(userinput); foreach (var item in teams) Console.Write(item.ToString() + " "); } ``` I know I have worded this poorly, so I hope that someone understands what I'm asking :P

Original source