Looping a switch statement
<p>I am new to C#. I have a "menu" in a console app. Now when I have finished picking an item out of the menu and doing what that menu item require I want to loop and show the menu again so that the user can choose a diffenrent menu item. I have an exit on the menu and I only want to use that to exit. I have tried a while loop but this doesnt work. It closes the app after a menu item has been chosen and the chosen items code has run. What am I doing wrong?</p>

<pre><code>static void Main()
    {   
        int input = 0;
        while (true)
        {

            Console.WriteLine("MENU");
            Console.WriteLine("Please enter the number that you want to do:");
            Console.WriteLine("1. Do thing A");
            Console.WriteLine("2. Do thing B");
            Console.WriteLine("3. Do thing C");
            Console.WriteLine("4. Do thing D");
            Console.WriteLine("5. Do thing E");
            Console.WriteLine("6. Do thing F");
            Console.WriteLine("7. Exit");

            int menuchoice = int.Parse(Console.ReadLine());

            switch (menuchoice)
            {
                case 1:
                    Console.WriteLine("Thing A has been done"); 
                    break;
                case 2:
                    Console.WriteLine("Thing B has been done");
                    break;
                case 3:
                    Console.WriteLine("Thing C has been done");
                    break;
                case 4:
                    Console.WriteLine("Thing D has been done");
                    break;
                case 5:
                    Console.WriteLine("Thing E has been done");
                    break;
                case 6:
                    Console.WriteLine("Thing F has been done");
                    break;
                case 7:
                    Environment.Exit; //edit
                    break;
                default:
                    Console.WriteLine("Sorry, invalid selection");
                    break;
            }

            input++;
            if (input &lt; 30)
                continue;
            else
                break;
        }           
    }
</code></pre>

<p>Can anyone please help? Thanks in advance!</p>

<p>EDIT: I am aware that that "Console.Exit" would not work. I did just put it like that to illastrate that the console must exit there. My problem is that I need to loop the whole menu every time after a option have been chosen and the chosen option code has run. I only want to use the exit to exit. But at this point the menu does not loop, the console closes after just 1 option have been chosen and that options code has run.</p>

<p>EDIT: What happens when you start your program and you press 1 followed by Return? This is the real problem, the menu doesnt seem to be looping. After I start my program and press 1 followed by return the code in case 1 runs perfectly but then the console just closes. If I start the console again and press 2 this time the code in case 2 also runs perfectly but then the console closes again. I have tested all my cases like this and all of them runs perfectly. </p>
