2013-05-06 18 views
0

有人可以幫助我。在C#.net中,我需要從對象內的對象中提取屬性及其值。對象「電腦」可能有不同類型的其他對象,我需要遞歸地通過「電腦」提取我需要的東西。C#.net如何循環對象內的對象

畫面層級的在這裏找到: http://www.virtualizeplanet.com/pcobjects.jpg

我試圖通過VAL屬性到一個單獨的對象「CC」在試圖通過它,使用此代碼重複,但我沒有得到正確的結果:

object cc = pc.val; 
foreach (var pp in cc.GetType().GetProperties()) 
{ 
string name = pp.Name; 
} 
+0

你需要什麼來循環這些以及如何知道你需要什麼?這個決定是在運行時做出還是事先知道? – 2013-05-06 22:28:52

+0

到目前爲止您嘗試過什麼?添加一些代碼到您的文章,這將更容易理解您的問題。 – estebane97 2013-05-06 22:29:56

+0

我需要name屬性和值以及val屬性和值。如果val屬性有多個索引,我需要遍歷它們並命名屬性和值。 – 2013-05-06 22:47:25

回答

0

你能解決這些問題嗎?

string name = PC.Name; 
int[] values; 
foreach (obj value in val) 
{ 
    values.Add(value); 
} 
// Do stuff 
+0

嗨傑克我可能輸入錯誤,但那個錯誤。 val不存在作爲我可以引用的對象。請參閱我上面添加的代碼。我成功地將pc.val傳遞給一個單獨的對象「cc」。我只需要重複一遍。或者 – 2013-05-06 23:02:51

+0

還有Jake沒有方法在代碼中「添加」數組「值」。 – 2013-05-06 23:06:58

+0

我可能會做些什麼: object anArray = pc.val; IEnumerable enumerable = anArray IEnumerable; 如果(枚舉!= NULL){ 的foreach (對象組件進行枚舉) {// 等等 }} @ – 2013-05-06 23:27:15