Кто-нибудь знает, есть ли какая-либо опция в VS2010 или какой-либо сторонний инструмент, который я могу использовать для обнаружения рекурсивных свойств, таких как:
private string name;
public string Name
{
get{ return this.Name; }
}
Вышесказанное, очевидно, является ошибкой, но компилятор не выдает предупреждений. Я могу оценить, что в целом рекурсивные методы совершенно законны, но приведенный выше сценарий не имеет особого смысла. Фактически это происходит, когда я пишу свойство перед полем поддержки, даже когда пишем this.name
в нижнем регистре, потому что VS2010 увидит, что this.name
не существует, и изменит регистр на this.Name
, который существует.
Проблема усугубляется при привязке к этому свойству в WPF. Приложение вылетает и забирает VS2010 с собой. Это делает его очень трудным для отладки, поэтому я хотел бы иметь какой-то инструмент, который бы предупредил меня во время компиляции.
Надеюсь, кто-то может помочь.
/ Klaus