private static decimal _rnd;
private static readonly Random rand = new Random(10);
private static decimal rnd
{
get
{
_rnd = Convert.ToDecimal(rand.NextDouble()*1000);
return _rnd;
}
}
Ознакомтесь с начальным материалом Рекурсивные функции.
Чтоб исправить данную ситуацию Вам необходимо решить, по каким условиям у Вас будет штатный выход из функции. Иногда даже имея штатный выход, можно получить StackOverflowException, так как глубина рекурсивных вызовов превышает стек. В этой ситуации Вы должны или отслеживать количество рекурсивных вызовов или обработать соответствующее исключение и заложить в логику программы его возникновение.