Да, у вас нет вспомогательного поля ... вот как вы должны это сделать:
private MyEnumType data;
public MyEnumType Data
{
get
{
return data;
}
set
{
data = value;
}
}
В результате вы обращаетесь к свойству, которое возвращает его, что вызывает бесконечный цикл попыток доступа к его собственному значению. Следовательно, StackOverFlow.
В вашем случае, когда вы не добавляете никакой дополнительной логики в методы get и set, вы также можете использовать автоматическое свойство. Это просто определяется так:
public MyEnumType Data
{
get;
set;
}