gpt4 book ai didi

c# - LINQ:获取列表中列表的所有项目

转载 作者:行者123 更新时间:2023-11-30 14:34:35 25 4
gpt4 key购买 nike

我有一个 ObservableCollection,其中包含另一个 ObservableCollection。

ObservableCollection<MyModel> models = new ObservableCollection<MyModel>();

我的模型看起来像这样:

public class MyModel
{
public ObservableCollection<MyModel2> list2 { get; set; }
public string Property1 { get; set; }
}

public class MyModel2
{
public string Property2 { get; set; }
public string Property3 { get; set; }
}

现在我想在“Property2”==“test1”和“Property3”==“test2”的模型中找到所有 MyModel2 项目

我知道如何只在一个 list2 中搜索以找到正确的项目,但我想在模型集合中的所有“list2”中搜索。

var result = from mod 
in list2
where mod.Property2 == "test1" && mod.Property3 == "test2"
select mod;

任何帮助将不胜感激。

最佳答案

听起来你想要这样的东西:

var query = from model in models
from model2 in model.list2
where model2.Property2 == "test1" && model2.Property == "test2"
select model2;

或者非查询表达式形式:

var query = models.SelectMany(model => model.list2)
.Where(model2 => model2.Property2 == "test1"
&& model2.Property == "test2");

关于c# - LINQ:获取列表中列表的所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13820836/

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