Ok, so dachte ich zuerst, das war einfach genug, und vielleicht ist es, und ich bin einfach zu müde - aber hier ist, was ich versuche zu tun. Sagen, dass ich die folgenden Objekte:Rekursiv Eigenschaften und untergeordnete Eigenschaften eines Objekts
public class Container
{
public string Name { get; set; }
public List<Address> Addresses { get; set; }
}
public class Address
{
public string AddressLine1 { get; set; }
public string AddressLine2 { get; set; }
public List<Telephone> Telephones { get; set; }
}
public class Telephone
{
public string CellPhone { get; set; }
}
Was ich in der Lage sein müssen, ist ‚flach‘ Container Eigenschaftsnamen in einen String (einschließlich aller Kind Eigenschaften und Kind Eigenschaften der Kinder Eigenschaften), die etwas aussehen würde wie folgt:
Container.Name, Container.Addresses.AddressLine1, Container.Addresses.AddressLine2, Container.Addresses.Telephones.CellPhone
Macht das irgendeinen Sinn? Ich kann es nicht um meinen Kopf wickeln.
Sie müssen klar darüber sein, wie Sie bestimmen, was eine Kind-Eigenschaft ist. Hier gehen Sie davon aus, dass die Liste als Typ T abgeflacht wird. Was wäre, wenn es eine Eigenschaft öffentliche Telefonnummer {get; einstellen; } (anstelle einer Liste )? Würde das anders gehandhabt? Sind Ihre Eigenschaften immer entweder primitive Typen oder Liste wo T ein komplexer Typ ist? –
mellamokb
mögliche Duplikate von [Verschachtelte Klassen und Rekursion] (http://stackoverflow.com/questions/811098/nested-classes-and-recursion) – nawfal