好吧,起初我認爲這很容易,也許它是,我只是太累了 - 但這就是我想要做的。說我有以下對象:遞歸地獲取對象的屬性和子屬性
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; }
}
我需要什麼,能夠做的,是在「扁平化」容器的屬性名稱的字符串(包括所有子屬性和子屬性的子屬性),將看起來像這樣:
Container.Name, Container.Addresses.AddressLine1, Container.Addresses.AddressLine2, Container.Addresses.Telephones.CellPhone
這是否有任何意義?我似乎無法將它包裹在我的頭上。
你必須清楚你將如何確定什麼是兒童財產。在這裏,你假設列表類型將被扁平化爲類型T.如果有一個屬性公共電話號碼{get;組; }(而不是列表)?這會被區別對待嗎?你的屬性總是或者是原始類型或者列表其中T是一個複雜類型? –
mellamokb
2010-11-19 01:22:33
[嵌套類和遞歸]的可能重複(http://stackoverflow.com/questions/811098/nested-classes-and-recursion) – nawfal 2013-04-25 09:12:47