Ну, из вашего кода не ясно, откуда на самом деле приходит ответ.Я бы реорганизовал это так:
public string RecursiveMethod()
{
string response = "fail";
if (someOtherConditionApplies)
response = "success";
if (response == "fail")
{
response = RecursiveMethod();
}
return response;
}
Вы где-то должны быть уверены, что
- выйдите из рекурсии
- используйте результат рекурсивного вызова
Однако вопрос для меня таков: почему вы вообще используете рекурсию в этом случае?