2012-09-17 54 views
0

我有一類像指定兒童重視同其父值類型初始化

public class Person 
{ 
    public string Name{ get; set; } 
    public string Address{ get; set; } 
    public List<Person> Children{ get; set; } 
} 

在這裏,我有一個屬性列表的兒童。

,現在我使用類型初始創建該類的實例的數組一樣

var persons = new []{ 
    new Person{ Name="Some Name", Address = "Some Address" }, 
    new Person{ Name="Some Name 2", Address = "Some Address 2", Children = new List<Person>{ 
      new Person { Name = "Some Name 3", 
       ** Address = <here I want its parent Address> "Some Address 2" **} 
     } 
    } 
}; 

所以,我的問題是我創造的人,我指定爲其地址屬性,現在我想的對象這個屬性值來分配它的子元素,但是我沒有找到一種方法來獲得它的父元素,就像我們通過這個關鍵字來獲得它的定義中的類成員一樣。

回答

1

C#沒有簡單的方法來做到這一點。上述Person對象與其子女之間的親子關係不是由該語言強制執行或提供的。解決上述問題的最簡單方法是將地址存儲在變量中並引用它。

string address = "Some Address 2"; 
var persons = new []{ 
    new Person{ Name="Some Name", Address = "Some Address" }, 
    new Person{ Name="Some Name 2", Address = address, 
     Children = new List<Person>{ 
       new Person { Name = "Some Name 3", address } 
     } 
    } 
}; 

或者,Person對象可在數據綁定狀排列的任何的兒童的地址設置到其自身。

+0

感謝您的回答。 –