ループ内の階層リストから子アイテムの値を合計する方法。ループ内の階層リストから子アイテムの値を合計する方法
リストのループ中に、amountプロパティとpriceプロパティの値には、これらの子プロパティの合計が含まれている必要があります。
私の問題解決に役立つ2つのクラスは次のとおりです。リスト内の要素を想定し
namespace SGP.Dto.Custo
{
public class PlanilhaCusto
{
public int id{ get; set; }
public int parenteId{ get; set; }
public string name { get; set; }
public decimal amount{ get; set; }
public decimal price{ get; set; }
public PlanilhaCusto(int pId, int pParenteId, pName, decimal pAmount, decimal pPrice)
{
id = pId;
parentId = pParentId;
name = pName;
amount = pAmount;
price = pPrice;
}
}
}
namespace SGP.Dto.Custo
{
public class ShowList
{
List<Dto.Custo.PlanilhaCusto> myList = new List<PlanilhaCusto>();
public void Show()
{
myList.Add(new PlanilhaCusto(1, null, "Projetos", 0, 0));
myList.Add(new PlanilhaCusto(2, 1, "Arquitetura", 5,10));
myList.Add(new PlanilhaCusto(3, 1, "Estrutura", 0, 0));
myList.Add(new PlanilhaCusto(4, 3, "Civil", 1, 50));
myList.Add(new PlanilhaCusto(5, 3, "Infra", 3, 75));
myList.Add(new PlanilhaCusto(6, null, "Pessoal", 0, 0));
myList.Add(new PlanilhaCusto(7, 6, "Mão de Obra", 20, 5700));
/*In this loop the value of the parent items must be updated
(calculated). The hierarchy of the list can be unlimited,
like a tree. I tried using a recursive method but I could
not do it.*/
foreach (var itemList in myList)
{
}
}
}
}
「再帰的な方法で試してみましたが、できませんでした」投稿してください。最悪の場合、ここで誰かがまったく同じ解決策を書いています。なぜなら、あなたが何をしようとしているのかが分かっていないからです。しかし、私はこれがあなたを助けるだろうと思っています、それはありませんか? – HimBromBeere
何か試しましたか? – Alejandro
これはテストや呪いなどの質問ですか? – KinSlayerUY