繁体   English   中英

我如何在Linq表达式中使用数组索引?

[英]how can i use array index in Linq expression?

我有一堂课

public class SizesClass
    {
        public int Sizeid { get; set; }
        public string SizeNumbers { get; set; }

    }

SizeNumbers中的数据就像20*20*30那么我有一个此类的列表,我希望通过这些数字之一对其进行排序。

var orderByDescending = Sizes.OrderBy(x => x.SizeNumbers.Split('*')[2]);

但是var orderByDescending变成null并且exeption说

The LINQ expression node type 'ArrayIndex' is not supported in LINQ to Entities.

也许这个吗?

var orderByDescending = Sizes.AsEnumerable.OrderBy(x => x.SizeNumbers.Split('*')[2]);

因为LINQ to Entities不支持'ArrayIndex',所以我们需要将所有数据加载到内存中,因此我们可以使用AsEnumerable()(或使用ToList())来实现这一点,然后可以对内存中的集合进行所有排序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM