Qu'est-ce qui me manque dans GetLowestLevelFoo? Pourquoi ai-je la réponse A au lieu de D?Recherche récursive de l'élément de niveau le plus bas en C#
public class Foo
{
public string Name { get; set; }
public Foo ChildFoo { get; set; }
}
[TestFixture]
public class Recursion
{
[Test]
public void Test()
{
Foo foo = new Foo
{
Name = "A",
ChildFoo = new Foo
{
Name = "B",
ChildFoo = new Foo
{
Name = "C",
ChildFoo = new Foo
{
Name = "D"
}
}
}
};
Assert.AreEqual("D", GetLowestLevelFoo(foo).Name);
}
public Foo GetLowestLevelFoo(Foo foo)
{
if (foo.ChildFoo != null)
{
GetLowestLevelFoo(foo.ChildFoo);
}
return foo;
}
}
Bah je suis sûr que j'ai essayé Merci –