c# – 使用Linq更新嵌套属性
发布时间:2020-12-15 07:44:52 所属栏目:百科 来源:网络整理
导读:我有一个具有非原始属性的类. 我需要更新父类的属性的一些子属性. public class Parent{ public string Abc { get; set; } public Childclass Pos { get; set; }}public class Childclass{ public string Value { get; set; }}ListParent parents = new List
我有一个具有非原始属性的类.
我需要更新父类的属性的一些子属性. public class Parent { public string Abc { get; set; } public Childclass Pos { get; set; } } public class Childclass { public string Value { get; set; } } List<Parent> parents = new List<Parent>() Parent p1 = new Parent(); p1.Pos.Value = "1"; parents.Add(p1); Parent p2 = new Parent(); p2.Pos.Value = "2"; parents.Add(p2); 现在我需要在Pos.Value ==“2”的父母那里更新Pos? 解决方法List<Parent> parents = new List<Parent>(); Parent p1 = new Parent(); p1.Pos = new Childclass() { Value = "1" }; parents.Add(p1); Parent p2 = new Parent(); p2.Pos = new Childclass() { Value = "2" }; parents.Add(p2); 如果您需要更新每个项目: foreach (Parent parent in parents.Where(e => e.Pos.Value.Equals("2"))) parent.Pos.Value = "new value"; 如果您只需要更新第一项: parents.FirstOrDefault(e => e.Pos.Value.Equals("2")).Pos.Value = "new value"; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |