55502f40dc8b7c769880b10874abc9d0

I don't know how to insert a try-catch method onto the switch statement and no matter where I look I never find my answer

decimal total = 0.00m;

            char Base;



            string bill = "\n\n";



            Console.WriteLine("**************");
            Console.WriteLine("My Pizza");

            Console.WriteLine("\nTraditional or 'thin and crispy' base? ");
            Console.WriteLine("A = Traditional");
            Console.WriteLine("B = thin and crispy");

 
                Base = char.Parse(((Console.ReadLine()).ToLower()).Substring(0, 1));
                switch (Base)
                {




                    case 'a':
                        bill += "\n\t-Traditional Base selected = FREE";
                        break;

                    case 'b':
                        bill += "\n\t-thin and crispy Base selected = FREE";
                        break;

                    
                }
    
                Console.WriteLine("\n\n\t\t\t=====Bill=====");
                Console.WriteLine(bill);

                Console.WriteLine("\n\t\ttotal \t\t = £" + total);
                Console.ReadLine();
            }
        }
    }

Refactorings

No refactoring yet !

F9a9ba6663645458aa8630157ed5e71e

Ants

June 30, 2010, June 30, 2010 17:11, permalink

2 ratings. Login to rate!

Doing that makes things really ugly... You should consider having the try-catch around the switch, OR I recommend moving each of the case handlers into their own functions.

Base = char.Parse(((Console.ReadLine()).ToLower()).Substring(0, 1));
                switch (Base)
                {
                    case 'a':
                    {
                        try
                        {
                            bill += "\n\t-Traditional Base selected = FREE";
                        }
                        catch (Exception) // Really bad: Should be explicit flavor of exception
                        {
                            // handle exception
                        }
                        break;
                    }

                    case 'b':
                    {
                        try
                        {
                            bill += "\n\t-thin and crispy Base selected = FREE";
                        }
                        catch (Exception) // Really bad: Should be explicit flavor of exception
                        {
                            // handle exception
                        }
                        break;
                    }                    
                }

Your refactoring





Format Copy from initial code

or Cancel