Реальная история (значения изменены для анонимности). Используется для неявного enum
в приложении
public enum { orange, banana, mango }
Некоторый рефакторинг вокруг порядка и новых значений, и мы решили сделать это явным:
public enum { orange=1, banana=2, grape=3, mango=4 }
выглядит безобидно ...
Следующая вещь, веб-сайт взрывается. Почесать голову, проверить сервис, добавить отладочные сообщения, все вроде нормально.
Вниз по кроличьей норе, один день спустя, причиной является базовый сервис wcf, который использовал перечисление в качестве типа возврата.
Очевидно, Wcf не любит перечисления без значения по умолчанию .
Fix:
public enum { wcfBugBane=0, orange=1, banana=2, grape=3, mango=4 }
Так что ... это может вас укусить.