Oh, but all that said, I might write your example as this:

Code:
if (installResult == 0)
    Console.WriteLine("MSI Uninstalled.");
else if (reportErrors)
    Console.WriteLine("Error: Uninstallation failed. MSI Error code: {0}", installResult);
else
    Console.WriteLine("MSI Exit Code: {0}", installResult);


Except that installResult and reportErrors are logically unrelated, so I wouldn't.

This, on the other hand, is fine:

Code:
if (count == 0)
    Console.WriteLine("You have no bananas");
else if (count == 1)
    Console.WriteLine("You have one banana");
else
    Console.WriteLine("You have {0} bananas", count);


...because the clauses are logically related.
_________________________
-- roger