Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用于组合两个字符串[]数组的LINQ查询_C#_Linq - Fatal编程技术网

C# 用于组合两个字符串[]数组的LINQ查询

C# 用于组合两个字符串[]数组的LINQ查询,c#,linq,C#,Linq,我有两个字符串数组 string[] array1 = new string[] { "aa", "bb", "cc"}; string[] array2 = new string[] { "abcd", "abbc", "abc", "cc", "abb" }; 我想使用linq查询仅选择array2中至少包含一个项目表单array1的项目 所以在这种情况下,我想得到回应: { "abbc", "cc", "abb" }; 我是从linq开始工作的,所以请给我解释一下我做错了什么。在这一点

我有两个字符串数组

string[] array1 = new string[] { "aa", "bb", "cc"};
string[] array2 = new string[] { "abcd", "abbc", "abc", "cc", "abb" };
我想使用linq查询仅选择
array2
中至少包含一个项目表单
array1
的项目

所以在这种情况下,我想得到回应:

{ "abbc", "cc", "abb" };
我是从linq开始工作的,所以请给我解释一下我做错了什么。在这一点上,这是我最好的尝试:

var res = array2.Select(n => array1.Select( c=> c.Contains(n))).ToArray();
但它的回报是:

array[] {array1, array1, array1, array1, array1}

问题是,通过使用
array1.Select(c=>c.Contains())
返回的是一组布尔值(Contains:yes/no)

var res = array2.Where(x => array1.Any(y => x.Contains(y))).ToArray();