![](/img/trans.png)
[英]How to convert ICollection<ICollection<int>> to List<List<int>> in C#
[英]Convert List<int[]> into an object of type ICollection<int, int[]>
我在DB First MVC3项目中有两个表,这些表之间存在多对多链接。
这些表组合在一起,产生一个可编辑的矩阵,并通过Ajax调用将其回传,该回传会传递一个简单数组。
由于多对多关系,我现在需要更改数组:
List<int[]>
带有这样的值:{AssetId:1,CourseId:2} {AssetId:1,CourseId:3} {AssetId:1,1,CourseId:4} {AssetId:2,CourseId:3} {AssetId:2,2,CourseId:4}
到:
ICollection<int, int[]>
具有这样的值:
{AssetId:1,CourseId [2、3、4]} {AssetId:2,CourseId [3、4]}
我被困住了,对您的任何帮助甚至正确方向的帮助都将不胜感激。
非常感谢。
您可以使用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();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.