0

我在 DB First MVC3 项目中有两个表,表之间存在多对多链接。

这些表结合起来产生一个可编辑的矩阵,并通过一个 Ajax 调用返回一个简单的数组。

由于多对多关系,我现在需要更改数组:

List<int[]>

使用如下值:{AssetId:1,CourseId:2}{AssetId:1,CourseId:3}{AssetId:1,CourseId:4}{AssetId:2,CourseId:3}{AssetId:2,CourseId:4}

给一个:

ICollection<int, int[]>

使用这样的值:

{AssetId: 1, CourseId[2, 3, 4]}{AssetId: 2, CourseId[3, 4]}

我被卡住了,非常感谢任何帮助,甚至是正确方向的一点。

非常感谢。

4

1 回答 1

0

您可以使用GroupBy方法按数组的索引对其进行分组,例如:

var groupedResult = list.GroupBy(x => x[0]);

并使用foreach语句循环结果:

foreach(var item in groupedResult)
{
  var assetId = item.Key ;
  foreach(int courseId in item)
  {
     // courses Id here
  }
}

您建议的解决方案:

var courseIds = list.Where(o => o[0] == item[0]).Distinct(); 
于 2013-02-18T14:34:19.573 回答