2017-07-20 51 views
-1

我有一個對象列表,每個對象都有一個屬性是另一個對象的列表。在這個邏輯中,我將第一個對象從基類轉換爲它的一個繼承類。在列表中更新列表

這是我想對我做出的最終清單。

我已經嘗試了一些東西,我可以看到逐步完成邏輯正在執行,但成品始終保持不變。

我已經使用LINQ的嘗試:

Object1BaseObjectList 
.Cast<Object1InheritedClass>() 
.ToList() 
.ForEach(e => 
    e.Object2List 
    .ToList() 
    .ForEach(p => p.boolValue = true)); 

我已經嘗試了一些更傳統的代碼:

foreach (Object1InheritedClass object1 in Object1BaseObjectList) 
{ 
    foreach (Object2Class object2 in object1.Object2List) 
    { 
     object2.boolValue = true; 
    } 
} 

就像我說的這兩個最終的結果是沒有任何變化。任何人對於這裏出了什麼問題有任何想法?

+1

你提交了更改嗎? – summerGhost

+0

'Object2'是結構體還是類? –

+0

@SergeyBerezovskiy這是一個類 – RichardMc

回答

1

只是爲了解決這個問題而回答。我提供的信息不足以回答這個問題。原來問題是由於第二個列表被聲明爲IEnumerable而引起的。將其更改爲列表可以更正它。我假設這是因爲IEnumerable沒有創建深層副本。