gpt4 book ai didi

c# - 使用linq C#从另一个数组中的数组中查找和计数

转载 作者:行者123 更新时间:2023-11-30 15:31:53 26 4
gpt4 key购买 nike

我有以下场景:

我从数据源获取记录集合并将它们添加到列表

List<Entity> e = new List<Entity>();
foreach (var elm in datasource)
{
e.Add(new Entity { First = elm.First, Second = elm.Second, Third = elm.Third });
}

这给了我类似的东西:

// -> First = John, Second = Sally, Third = Ingrid
// -> First = Sally, Second = Ingrid, Third = James
// -> First = Ingrid, Second = Sally, Third = James

我在一个列表中有一个可能的值数组,这些值可以是真值,也可以是负值

List<string> positives = { "John", "Sally" }
List<string> negatives = { "Ingrid", "James" }

我正在寻找一个优雅的原因来匹配我在通用列表 e 中的正数和负数的数量,按照上面的那样?使用 LINQ 可以实现这样的事情吗?

因为我不熟悉 LINQ,不知道从哪里开始。我试过类似的东西:

var pos = e.SelectMany(s => s in positives).Count()

但这会引发异常。

任何帮助将不胜感激

最佳答案

SQL在LINQ中的in子句是Contains方法。

测试:

var pos = e.SelectMany(s => positives.Contains(s)).Count();

我好像没看懂你的问题。再次阅读。

老实说,你的问题措辞不当。
但根据我的理解,我认为正确的回答是:

var pos = e.SelectMany(i => positives.Contains(i.First) 
|| positives.Contains(i.Second)
|| positives.Contains(i.Third)).Count();

关于c# - 使用linq C#从另一个数组中的数组中查找和计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19998168/

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