gpt4 book ai didi

c# - 在列表中查找对象并替换其值

转载 作者:太空宇宙 更新时间:2023-11-03 18:05:48 26 4
gpt4 key购买 nike

我有以下列表和类:

List<MyClass> MyList

public class MyClass
{
public int id { get; set; }
public bool checked { get; set; }
}

我还有两个变量:

int idToFind = 1234;
bool newcheckedvalue = true;

我需要做的是搜索列表并找到 MyClass 对象,其中 id 等于 idToFind 的值。一旦列表中有了对象,我就想将类中选中属性的值更改为 newcheckedvalue 值的值。

LINQ 似乎是这个问题的解决方案,我只是无法正确表达。我可以在单个 LINQ 表达式中执行此操作吗?

最佳答案

LINQ是用来查询集合的,不是用来修改的。您可以找到如下对象:

var item = MyList.FirstOrDefault(r=> r.id == idtoFind && r.checked == newcheckedvalue);

要根据 ID 查找项目,您只能执行以下操作:

var item = MyList.FirstOrDefault(r=> r.id == idtoFind);

稍后您可以设置/修改其属性。

//Make sure to check against Null, as if item is not found FirstOrDefault will return null
item.checked = newcheckedvalue; //or any other value

关于c# - 在列表中查找对象并替换其值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30533419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com