我有两个具有相同类类型(PPLWebOperatorGridList
)的对象(A,B)。我需要用A.OldValue
更新B.Value
。
我尝试通过添加guid属性并在构造函数中对其进行更新,如下所示。但是这些对象列表可能重复相同的值:
public PPLWebOperatorGridList()
{
this.guid = this.FieldName+this.TagName+
this.Length+this.Encoder+this.Value;
}
public string guid { get; set; }
我尝试如下。我知道其中存在错误,但请考虑其中的想法。
private List<PPLWebOperatorGridList> UpddateOldValues(List<PPLWebOperatorGridList> customeTlvList, List<PPLWebOperatorGridList> customeTlvList2)
{
foreach (var list in customeTlvList)
{
foreach (var list1 in customeTlvList2)
{
if (list.guid == list1.guid)
{
list.OldValue = list1.Value;
if (list.children.Count > 0)
UpddateOldValues(list.children.ToList(), list1.children.ToList());
}
}
}
return customeTlvList;
}
该列表中的guid属性可能相同。
class PPLWebOperatorGridList
{
public bool expanded { get; set; }
public string FieldName { get; set; }
public string TagName { get; set; }
public string Length { get; set; }
public string Encoder { get; set; }
public string Value { get; set; }
public List<PPLWebOperatorGridList> children { get; set; }
public string OldValue { get; set; }
}
我需要根据索引进行遍历,并用A.OldValue
更新B.Value
。我对linq不太熟悉,所以请提出解决方案。