Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.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
Linq:Join+;使用Lambda表达式进行分组_Linq - Fatal编程技术网

Linq:Join+;使用Lambda表达式进行分组

Linq:Join+;使用Lambda表达式进行分组,linq,Linq,是否可以在lambda表达式中联接两个集合并按两个集合中的元素分组 例如: 收集/表格(1):学生 集合/表格(2):标记 所以我需要结果集合包含 StudentID StudentName Term Mark 1 X 1 190 2 200 2 Y 1 180

是否可以在lambda表达式中联接两个集合并按两个集合中的元素分组

例如: 收集/表格(1):学生

集合/表格(2):标记

所以我需要结果集合包含

StudentID     StudentName   Term      Mark
   1              X           1        190
                              2        200
   2              Y           1        180
                              2        190
谢谢。

您可以像这样使用:

在此之后,可以使用.Join()。

可以使用或方法连接两个列表。如果要复制值,请使用
Concat
,如果不使用
Union
。然后可以使用按特定属性或键对结果进行分组

您可以在Internet或
MSDN
上找到许多好的示例。只需阅读这些方法的文档或查找一些教程。

请给我们展示一个简单的示例。还有,你尝试了什么,你在哪里卡住了?
StudentID    Term      Subject      Mark
  1            1       Math         100
  1            1       Physics      90
  1            2       Math         100
  1            2       Physics      100
  2            1       Math         95
  2            1       Physics      85
  2            2       Math         90
  2            2       Physics      100
StudentID     StudentName   Term      Mark
   1              X           1        190
                              2        200
   2              Y           1        180
                              2        190
var combinedandordered = foo.Concat(bar).OrderBy(it => it.param);