如何在 C# 中更新列表
本文关键字:更新 列表 | 更新日期: 2023-09-27 18:30:54
IList<ReceiptAllocationMaster> objReceiptMaster = (IList<ReceiptAllocationMaster>)Session["AllocationResult"];
public class ReceiptAllocationMaster
{
public string application { get; set; }
public List<Users> users { get; set; }
}
public class Users
{
public string name { get; set; }
public string surname { get; set; }
}
我需要用一些值更新上面的列表,其中application = "applicationame"
和用户surname = "surname"
到同一个列表中。
只需遍历列表并修改匹配的项目:
for (int i = 0; i < objReceiptMaster.Count; i++)
{
var item = objReceiptMaster[i];
if (item.application == "applicationname" && item.users.Any(x => x.surname == "surname"))
objReceiptMaster[i] = new ReceiptAllocationMaster();
}
您可以编写任何修改数据逻辑,而不是new ReceiptAllocationMaster()
。
虽然你的问题不清楚,但这个 shd 给了你一些想法:
objReceiptMaster.Where(x=>x.application=="applicationname" &&
x.users.Any(d=>d.surname=="surname"))
.ToList()
.ForEach(item=>{//update your list
item.application = "whatever value";
item.users.ForEach(user=>{//update users
user.name="whatever username";
});
});